简介
使用说明
限速值设置范围为819200 – 838860800,单位默认为 bit/s,即800Kb/s – 800Mb/s,如果超出该范围将返回400错误。说明关于单链接限速的更多说明,请参见 单链接限速 开发者指南。
设置上传限速
// 使用高级接口必须先保证本进程存在一个 TransferManager 实例,如果没有则创建// 详细代码参见本页:高级接口 -> 创建 TransferManagerTransferManager transferManager = createTransferManager();
// 存储桶的命名格式为 BucketName-APPID,此处填写的存储桶名称必须为此格式String bucketName = "examplebucket-1250000000";// 对象键(Key)是对象在存储桶中的唯一标识。详情请参见 [对象键](https://cloud.tencent.com/document/product/436/13324)String key = "exampleobject";
// 这里创建一个 ByteArrayInputStream 来作为示例,实际中这里应该是您要上传的 InputStream 类型的流long inputStreamLength = 1024 * 1024;byte data[] = new byte[inputStreamLength];InputStream inputStream = new ByteArrayInputStream(data);
// 限速使用的单位是 bit/s, 这里设置上传限制为 10MB/sputObjectRequest.setTrafficLimit(80*1024*1024);
try { // 高级接口会返回一个异步结果Upload // 可同步地调用 waitForUploadResult 方法等待上传完成,成功返回UploadResult, 失败抛出异常 Upload upload = transferManager.upload(putObjectRequest); UploadResult uploadResult = upload.waitForUploadResult();} catch (CosServiceException e) { e.printStackTrace();} catch (CosClientException e) { e.printStackTrace();} catch (InterruptedException e) { e.printStackTrace();}
// 确定本进程不再使用 transferManager 实例之后,关闭即可// 详细代码参见本页:高级接口 -> 关闭 TransferManagershutdownTransferManager(transferManager);
设置下载限速
// 使用高级接口必须先保证本进程存在一个 TransferManager 实例,如果没有则创建// 详细代码参见本页:高级接口 -> 创建 TransferManagerTransferManager transferManager = createTransferManager();
// 存储桶的命名格式为 BucketName-APPID,此处填写的存储桶名称必须为此格式String bucketName = "examplebucket-1250000000";// 对象键(Key)是对象在存储桶中的唯一标识。详情请参见 [对象键](https://cloud.tencent.com/document/product/436/13324)String key = "exampleobject";// 本地文件路径String localFilePath = "/path/to/localFile";File downloadFile = new File(localFilePath);
GetObjectRequest getObjectRequest = new GetObjectRequest(bucketName, key);// 限速使用的单位是 bit/s, 这里设置下载限制为 10MB/sgetObjectRequest.setTrafficLimit(80*1024*1024);
try { // 返回一个异步结果 Donload, 可同步的调用 waitForCompletion 等待下载结束, 成功返回 void, 失败抛出异常 Download download = transferManager.download(getObjectRequest, downloadFile); download.waitForCompletion();} catch (CosServiceException e) { e.printStackTrace();} catch (CosClientException e) { e.printStackTrace();} catch (InterruptedException e) { e.printStackTrace();}
// 确定本进程不再使用 transferManager 实例之后,关闭即可// 详细代码参见本页:高级接口 -> 关闭 TransferManagershutdownTransferManager(transferManager);
对象存储官网1折活动,限时活动,即将结束,速速收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠
转转请注明出处:https://www.yunxiaoer.com/145762.html