开发者指南

API 文档

SDK 文档

设置自定义头部

最近更新时间:2020-08-06 16:42:09

简介

本文档主要介绍 SDK 如何在请求时携带自定义头部。

SDK API 参考

SDK 所有接口的具体参数与方法说明,请参考 SDK API 参考

功能说明

COS 在上传对象时可以携带以 x-cos-meta- 开头的自定义头部,包括用户自定义元数据头部后缀和用户自定义元数据信息,这些头部将作为对象元数据保存。

如果您开通了万象服务,可以携带 Pic-Operations 头部,实现后台自动图片处理,详细的 API 说明请参考 数据万象持久化

示例代码

String region = "ap-beijing"; // 您的存储桶地域
String commonHeaderKey = "commonexamplekey"; // 自定义公共 Header 的键
String commonHeaderValue = "commonexamplevalue"; // 自定义公共 Header 的值
String requestHeaderKey = "requestexamplekey"; // 自定义请求 Header 的键
String requestHeaderValue = "requestexamplevalue"; // 自定义请求 Header 的值

CosXmlServiceConfig cosXmlServiceConfig = new CosXmlServiceConfig.Builder()
        .isHttps(true)
        .setRegion(region)
        .setDebuggable(false)
        // 给所有的请求添加公共的自定义 Header
        .addHeader(commonHeaderKey, commonHeaderValue)
        .builder();

CosXmlService cosXmlService = new CosXmlService(context, cosXmlServiceConfig,
        credentialProvider);

// 给单个请求添加自定义 Header,优先级比公共 Header 更高
HeadObjectRequest headObjectRequest = new HeadObjectRequest(bucket, cosPath);
try {
    headObjectRequest.setRequestHeaders(requestHeaderKey, requestHeaderValue, false);
} catch (CosXmlClientException e) {
    e.printStackTrace();
}

// 发起请求
cosXmlService.headObjectAsync(headObjectRequest, new CosXmlResultListener() {
    @Override
    public void onSuccess(CosXmlRequest request, CosXmlResult result) {
        HeadObjectResult headObjectResult = (HeadObjectResult) result;
    }

    @Override
    public void onFail(CosXmlRequest request, CosXmlClientException clientException,
                       CosXmlServiceException serviceException) {
        if (clientException != null) {
            clientException.printStackTrace();
        } else {
            serviceException.printStackTrace();
        }
    }
});
说明:

更多完整示例,请前往 GitHub 查看。

目录