分片上传接口 融合接口 SDK提供封装好的融合接口,方便用户实现分片上传的功能。 接口定义 plaintext public void Upload(string filePath, string bucketName, string key); public void Upload(Stream stream, string bucketName, string key); public void Upload(TransferUtilityUploadRequest request); public Task UploadAsync(string filePath, string bucketName, string key, CancellationToken cancellationToken default); public Task UploadAsync(Stream stream, string bucketName, string key, CancellationToken cancellationToken default); public Task UploadAsync(TransferUtilityUploadRequest request, CancellationToken cancellationToken default); 代码示例 plaintext class TransDemo { private readonly AmazonS3Client s3Client; private readonly TransferUtility utility; private string bucket " "; public TransDemo() { var credentials new BasicAWSCredentials(" ", " "); var conf new AmazonS3Config { ServiceURL " ", }; this.s3Client new AmazonS3Client(credentials, conf); this.utility new TransferUtility(this.s3Client); } public void UploadFile() { Console.Out.WriteLine("UploadFile"); var key " "; var filePath " "; this.utility.Upload(filePath, bucket, key); Console.Out.WriteLine("UploadFile success"); } public void UploadFileRequest() { Console.Out.WriteLine("UploadFileRequest"); var key " "; var filePath " "; TransferUtilityUploadRequest req new TransferUtilityUploadRequest(); req.BucketName this.bucket; req.Key key; //req.FilePath filePath; req.InputStream new FileStream(filePath, FileMode.Open, FileAccess.Read); req.PartSize 5 1024 1024; req.CannedACL S3CannedACL.PublicRead; this.utility.Upload(req); Console.Out.WriteLine("UploadFileRequest success"); } } 请求参数 参数名 类型 说明 是否必要 bucketName string 桶名 是 key string 要上传的对象名称 是 filePath string 上传的文件路径(和stream二选一) 否 stream Stream 上传的文件流(和filePath二选一) 否 TransferUtilityUploadRequest主要参数: 参数名 类型 说明 是否必要 BucketName string 桶名 是 Key string 要上传的对象名称 是 FilePath string 上传的文件路径(和InputStream二选一) 否 InputStream Stream 上传的文件流(和FilePath二选一) 否 PartSize long 分片大小,默认5MB 否 ContentType string 描述上传文件格式的标准MIME类型 否 CannedACL S3CannedACL 标准ACL信息(PrivatePublicRead) 否
来自: