分片上传接口 请求参数 CopyPart可设置的参数如下: 参数 类型 说明 是否必要 DestinationBucket string 放置拷贝生成对象的桶名称 是 DestinationKey string 拷贝生成对象的key 是 SourceBucket string 放置被拷贝对象的桶名称 是 SourceKey string 被拷贝对象的key 是 UploadId string 与本次拷贝操作相应的分片上传Id 是 SourceVersionId string 指定被拷贝对象的版本信息,如果不指定,默认拷贝对象的当前版本 否 返回结果 CopyPart返回的结果如下: 参数 类型 说明 ContentLength long 拷贝分片的长度 ETag string 拷贝分片的ETag LastModified string 拷贝分片的最新修改时间 PartNumber int 拷贝分片的序号 取消分片上传任务 功能说明 AbortMultipartUpload操作用于终止一个分片上传任务。当一个分片上传任务被中止后,不会再有数据通过与之相应的upload id上传,同时已经被上传的分片所占用的空间会被释放。执行AbortMultipartUpload操作后,正在上传的分片可能会上传成功也可能会被中止,所以必要的情况下需要执行多次AbortMultipartUpload操作去释放全部上传成功的分片所占用的空间。可以通过执行ListParts操作来确认所有中止分片上传后所有已上传分片的空间是否被被释放。 代码示例 plaintext using System; using System.Threading.Tasks; using Amazon.Runtime; using Amazon.S3; using Amazon.S3.Model; namespace DotNetSDK.ObjectOperation { public class AbortMultipartUploadExample { public static async Task AbortMultipartUpload() { var accessKey " "; var secretKey " "; var endpoint " "; var bucketName " "; var key " "; var uploadId " "; try { var credentials new BasicAWSCredentials(accessKey, secretKey); var conf new AmazonS3Config { ServiceURL endpoint }; var s3Client new AmazonS3Client(credentials, conf); var abortMultipartUploadRequest new AbortMultipartUploadRequest() { BucketName bucketName, Key key, UploadId uploadId }; var result await s3Client.AbortMultipartUploadAsync(abortMultipartUploadRequest); if (result.HttpStatusCode ! System.Net.HttpStatusCode.NoContent) { Console.WriteLine("fail to abort multipart upload, uploadId:{0}, HttpStatusCode:{1}, ErrorCode:{2}.", uploadId, (int) result.HttpStatusCode, result.HttpStatusCode); return; } Console.WriteLine("aborted multipart upload, uploadId:{0}.", uploadId); } catch (Exception e) { Console.WriteLine(e.Message); } } } }
来自: