开发者社区 问答 正文

对象存储 OSS3. 上传文件

已解决

展开
收起
2017-12-30 06:18:15 921 分享 版权
1 条回答
写回答
取消 提交回答
  • 采纳回答

    详细解答可以参考官方帮助文档

    文件(Object)是OSS中最基本的数据单元,用下面代码可以实现上传文件:

    1. using Aliyun.OSS;
    2. /// <summary>
    3. /// 上传指定的文件到指定的OSS的存储空间
    4. /// </summary>
    5. /// <param name="bucketName">指定的存储空间名称</param>
    6. /// <param name="key">文件的在OSS上保存的名称</param>
    7. /// <param name="fileToUpload">指定上传文件的本地路径</param>
    8. public void PutObject(string bucketName, string key, string fileToUpload)
    9. {
    10. var client = new OssClient(endpoint, accessKeyId, accessKeySecret);
    11. try
    12. {
    13. var result = client.PutObject(bucketName, key, fileToUpload);
    14. Console.WriteLine("Put object succeeded");
    15. Console.WriteLine("ETag:{0}", result.ETag);
    16. }
    17. catch (Exception ex)
    18. {
    19. Console.WriteLine("Put object failed, {0}", ex.Message);
    20. }
    21. }

    注意:

    • 每个上传的文件,都可以指定和此文件关联的ObjectMeta。
    • ObjectMeta是用户对该文件的描述,由一系列key-value对组成;
    • 为了保证上传文件服务器端与本地一致,用户可以设置Content-MD5,OSS会计算上传数据的MD5值并与用户上传的MD5值比较,如果不一致返回InvalidDigest错误码。
    • 计算出来的Content-MD5需要在上传时设置给ObjectMetadata的ETag。
    • 关于文件的命名规范和其他更详细的信息,参见上传文件
    2018-01-03 03:10:33
    赞同 展开评论
问答分类:
问答标签:
问答地址: