public interface BaseCosXml
提供用于访问Tencent Cloud COS服务的基础接口。
对象存储(Cloud Object Storage,COS)是腾讯云提供的一种存储海量文件的分布式存储服务,用户可通过网络随时存储和查看数据。腾讯云 COS 使所有用户都能使用具备高扩展性、低成本、可靠和安全的数据存储服务。
SimpleCosXml为每个接口都提供了同步和异步操作,如同步接口为basePutObject(BasePutObjectRequest)
,
则对应的异步接口为basePutObjectAsync(BasePutObjectRequest, CosXmlResultListener)
.
更多信息请参见: 腾讯云COS文档 腾讯云COS XML API文档
注意:这里封装的是COS XML接口,COS JSON接口相关的SDK请参见COS V4,由于COS XML接口相比JSON接口 有更丰富的特性,因此我们更推荐您使用XML SDK。
限定符和类型 | 方法和说明 |
---|---|
BasePutObjectResult |
basePutObject(BasePutObjectRequest request)
基础简单上传的同步方法.
|
void |
basePutObjectAsync(BasePutObjectRequest request,
CosXmlResultListener cosXmlResultListener)
基础简单上传的异步方法.
|
void |
cancel(CosXmlRequest cosXmlRequest)
取消请求任务
|
void |
cancelAll()
取消所有的请求任务
|
GetObjectResult |
getObject(GetObjectRequest request)
下载 COS 对象的同步方法.
|
byte[] |
getObject(java.lang.String bucketName,
java.lang.String objectName)
下载 COS 对象到字节数组的同步方法
和 getObject(GetObjectRequest) 类似,只是返回结果形式不同
注意:请不要通过本接口下载大文件,否则容易造成内存溢出。 |
void |
getObjectAsync(GetObjectRequest request,
CosXmlResultListener cosXmlResultListener)
下载 COS 对象的异步方法.
|
java.lang.String |
getObjectUrl(java.lang.String bucket,
java.lang.String region,
java.lang.String key)
获取对象的 url 地址
|
void |
release()
释放所有的请求.
|
UploadPartResult |
uploadPart(UploadPartRequest request)
上传一个分片块的同步方法.
|
void |
uploadPartAsync(UploadPartRequest request,
CosXmlResultListener cosXmlResultListener)
上传一个分片块的异步方法.
|
GetObjectResult getObject(GetObjectRequest request) throws CosXmlClientException, CosXmlServiceException
下载 COS 对象的同步方法.
可以直接发起 GET 请求获取 COS 中完整的对象数据, 或者在 GET 请求 中传入 Range 请求头部获取对象的部分内容. 获取COS 对象的同时,对象的元数据将会作为 HTTP 响应头部随对象内容一同返回,COS 支持GET 请求时 使用 URL 参数的方式覆盖响应的部分元数据值,例如覆盖 Content-iDisposition 的响应值.
功能描述:https://cloud.tencent.com/document/product/436/14115.
API 接口:https://cloud.tencent.com/document/product/436/7753.
SDK 示例:下载对象示例
request
- 获取 COS 对象的请求 GetObjectRequest
GetObjectResult
CosXmlClientException
- 客户端异常CosXmlServiceException
- 服务端异常void getObjectAsync(GetObjectRequest request, CosXmlResultListener cosXmlResultListener)
下载 COS 对象的异步方法.
可以直接发起 GET 请求获取 COS 中完整的对象数据, 或者在 GET 请求 中传入 Range 请求头部获取对象的部分内容. 获取COS 对象的同时,对象的元数据将会作为 HTTP 响应头部随对象内容一同返回,COS 支持GET 请求时 使用 URL 参数的方式覆盖响应的部分元数据值,例如覆盖 Content-iDisposition 的响应值.
功能描述:https://cloud.tencent.com/document/product/436/14115.
API 接口:https://cloud.tencent.com/document/product/436/7753.
SDK 示例:下载对象示例
request
- 获取 COS 对象的请求 GetObjectRequest
cosXmlResultListener
- 请求回调结果 CosXmlResultListener
byte[] getObject(java.lang.String bucketName, java.lang.String objectName) throws CosXmlClientException, CosXmlServiceException
下载 COS 对象到字节数组的同步方法
和getObject(GetObjectRequest)
类似,只是返回结果形式不同
注意:请不要通过本接口下载大文件,否则容易造成内存溢出。
bucketName
- 存储桶名称objectName
- 对象远端路径,即存储到 COS 上的绝对路径CosXmlClientException
- 客户端异常CosXmlServiceException
- 服务端异常BasePutObjectResult basePutObject(BasePutObjectRequest request) throws CosXmlClientException, CosXmlServiceException
基础简单上传的同步方法.
简单上传主要适用于在单个请求中上传一个小于 5 GB 大小的对象. 对于大于 5 GB 的对象(或者在高带宽或弱网络环境中)优先使用分片上传的方式 (https://cloud.tencent.com/document/product/436/14112).
功能描述:https://cloud.tencent.com/document/product/436/14113.
API 接口:https://cloud.tencent.com/document/product/436/7749.
SDK 示例:简单上传对象示例
request
- 简单上传请求 BasePutObjectRequest
BasePutObjectResult
CosXmlClientException
- 客户端异常CosXmlServiceException
- 服务端异常void basePutObjectAsync(BasePutObjectRequest request, CosXmlResultListener cosXmlResultListener)
基础简单上传的异步方法.
简单上传主要适用于在单个请求中上传一个小于 5 GB 大小的对象. 对于大于 5 GB 的对象(或者在高带宽或弱网络环境中)优先使用分片上传的方式 (https://cloud.tencent.com/document/product/436/14112).
功能描述:https://cloud.tencent.com/document/product/436/14113.
API 接口:https://cloud.tencent.com/document/product/436/7749.
SDK 示例:简单上传对象示例
request
- 简单上传请求 BasePutObjectRequest
cosXmlResultListener
- 请求回调结果 CosXmlResultListener
UploadPartResult uploadPart(UploadPartRequest request) throws CosXmlClientException, CosXmlServiceException
上传一个分片块的同步方法.
使用分块上传时,可将对象切分成一个个分块的方式上传到 COS,每个分块上传需要携带分块号(partNumber) 和 uploadId({SimpleCosXml#initMultipartUpload(InitMultipartUploadRequest)}), 每个分块大小为 1 MB 到 5 GB ,最后一个分块可以小于 1 MB, 若传入 uploadId 和 partNumber都相同, 后传入的块将覆盖之前传入的块,且支持乱序上传.
功能描述:https://cloud.tencent.com/document/product/436/14112.
API 接口:https://cloud.tencent.com/document/product/436/7750.
SDK 示例:上传分块示例
request
- 上传一个对象某个分块请求 UploadPartRequest
UploadPartResult
CosXmlClientException
- 客户端异常CosXmlServiceException
- 服务端异常void uploadPartAsync(UploadPartRequest request, CosXmlResultListener cosXmlResultListener)
上传一个分片块的异步方法.
使用分块上传时,可将对象切分成一个个分块的方式上传到 COS,每个分块上传需要携带分块号(partNumber) 和 uploadId({SimpleCosXml#initMultipartUpload(InitMultipartUploadRequest)}), 每个分块大小为 1 MB 到 5 GB ,最后一个分块可以小于 1 MB, 若传入 uploadId 和 partNumber都相同, 后传入的块将覆盖之前传入的块,且支持乱序上传.
功能描述:https://cloud.tencent.com/document/product/436/14112.
API 接口:https://cloud.tencent.com/document/product/436/7750.
SDK 示例:上传分块示例
request
- 上传某个分块请求 UploadPartRequest
cosXmlResultListener
- 请求回调结果 CosXmlResultListener
java.lang.String getObjectUrl(java.lang.String bucket, java.lang.String region, java.lang.String key)
void cancel(CosXmlRequest cosXmlRequest)
cosXmlRequest
- 请求request CosXmlRequest
void cancelAll()
void release()
cancelAll()