分片上传接口 完成分片上传任务 完成所有分片的上传之后,调用完成接口CompleteMultipartUpload,服务端会把所有分片合并成对象保存。 可设置的参数如下: 参数 类型 说明 是否必要 BucketName string 执行分片上传的桶的名称 是 Key string 上传文件到媒体存储服务后对应的key 是 PartETags List 包含了每个已上传的分片的ETag和PartNUmber等信息 否 UploadId string 通过CreateMultipartUpload操作获取的UploadId,与一个对象的分片上传对应 是 返回的结果如下: 参数 类型 说明 BucketName string 执行分片上传的桶的名称 ETag string 本次上传对象后对应的Entity Tag Key string 上传文件到媒体存储服务后对应的key Location string 上传对象后对应的URI VersionId string 上传对象后相应的版本id 列举分片上传任务 功能说明 ListMultipartUploads操作可以列出一个桶中正在进行的分片上传任务,这些分片上传任务的请求已经发起,但是还没完成或者被中止。 代码示例 plaintext using System; using System.Threading.Tasks; using Amazon.Runtime; using Amazon.S3; using Amazon.S3.Model; namespace DotNetSDK.ObjectOperation { public class ListMultipartUploadsExample { public static async Task ListMultipartUploads() { var accessKey " "; var secretKey " "; var endpoint " "; var bucketName " "; var credentials new BasicAWSCredentials(accessKey, secretKey); try { var conf new AmazonS3Config { ServiceURL endpoint }; var s3Client new AmazonS3Client(credentials, conf); var listMultipartUploadsRequest new ListMultipartUploadsRequest() { BucketName bucketName }; var result await s3Client.ListMultipartUploadsAsync(listMultipartUploadsRequest); if (result.HttpStatusCode ! System.Net.HttpStatusCode.OK) { Console.WriteLine("fail to list multipart uploads in bucket {0}, HttpStatusCode:{1}, ErrorCode:{2}.", bucketName, (int) result.HttpStatusCode, result.HttpStatusCode); return; } foreach (var multipartUpload in result.MultipartUploads) { Console.WriteLine("key: {0}, uploadId: {1}", multipartUpload.Key, multipartUpload.UploadId); } } catch (Exception e) { Console.WriteLine(e.Message); } } } }
来自: