tencent cloud

文档反馈

自定义域名

最后更新时间:2024-01-04 15:52:02

    简介

    本文档提供关于自定义域名的 API 概览以及 SDK 示例代码。
    API
    操作名
    操作描述
    设置自定义域名
    设置存储桶的自定义域名信息
    查询自定义域名
    查询存储桶的自定义域名信息
    删除自定义域名
    删除存储桶的自定义域名配置信息

    SDK API 参考

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

    设置自定义域名

    功能说明

    PUT Bucket domain 用于为存储桶配置自定义域名。

    示例代码

    // 存储桶名称,由 bucketname-appid 组成,appid 必须填入,可以在 COS 控制台查看存储桶名称。 https://console.tencentcloud.com/cos5/bucket
    String bucket = "examplebucket-1250000000";
    PutBucketDomainRequest putBucketDomainRequest =
    new PutBucketDomainRequest(bucket);
    DomainConfiguration.DomainRule domainRule = new DomainConfiguration.DomainRule(
    DomainConfiguration.STATUS_ENABLED,
    "www.example.com",
    DomainConfiguration.TYPE_REST
    );
    domainRule.forcedReplacement = DomainConfiguration.REPLACE_CNAME;
    putBucketDomainRequest.addDomainRule(domainRule);
    
    cosXmlService.putBucketDomainAsync(putBucketDomainRequest,
    new CosXmlResultListener() {
    @Override
    public void onSuccess(CosXmlRequest request, CosXmlResult result) {
    PutBucketDomainResult putBucketDomainResult =
    (PutBucketDomainResult) result;
    }
    
    // 如果您使用 kotlin 语言来调用,请注意回调方法中的异常是可空的,否则不会回调 onFail 方法,即:
    // clientException 的类型为 CosXmlClientException?,serviceException 的类型为 CosXmlServiceException?
    @Override
    public void onFail(CosXmlRequest cosXmlRequest,
    @Nullable CosXmlClientException clientException,
    @Nullable CosXmlServiceException serviceException) {
    if (clientException != null) {
    clientException.printStackTrace();
    } else {
    serviceException.printStackTrace();
    }
    }
    });
    说明
    更多完整示例,请前往 GitHub 查看。

    返回错误码说明

    该请求可能会发生的一些常见的特殊错误如下:
    状态码
    说明
    HTTP 409 Conflict
    该域名记录已存在,且请求中没有设置强制覆盖。或者该域名记录不存在,且请求中设置了强制覆盖
    HTTP 451 Unavailable For Legal Reasons
    该域名是中国境内域名,并且没有备案

    查询自定义域名

    功能说明

    GET Bucket domain 用于查询存储桶的自定义域名信息。

    示例代码

    // 存储桶名称,由 bucketname-appid 组成,appid 必须填入,可以在 COS 控制台查看存储桶名称。 https://console.tencentcloud.com/cos5/bucket
    String bucket = "examplebucket-1250000000";
    GetBucketDomainRequest getBucketDomainRequest =
    new GetBucketDomainRequest(bucket);
    cosXmlService.getBucketDomainAsync(getBucketDomainRequest,
    new CosXmlResultListener() {
    @Override
    public void onSuccess(CosXmlRequest request, CosXmlResult result) {
    GetBucketDomainResult getBucketTaggingResult =
    (GetBucketDomainResult) result;
    }
    
    // 如果您使用 kotlin 语言来调用,请注意回调方法中的异常是可空的,否则不会回调 onFail 方法,即:
    // clientException 的类型为 CosXmlClientException?,serviceException 的类型为 CosXmlServiceException?
    @Override
    public void onFail(CosXmlRequest cosXmlRequest,
    @Nullable CosXmlClientException clientException,
    @Nullable CosXmlServiceException serviceException) {
    if (clientException != null) {
    clientException.printStackTrace();
    } else {
    serviceException.printStackTrace();
    }
    }
    });
    说明
    更多完整示例,请前往 GitHub 查看。

    返回参数说明

    参数名称
    描述
    类型
    x-cos-domain-txt-verification
    域名校验信息,该字段是一个 MD5 校验值,原串格式为:cos[Region][BucketName-APPID][BucketCreateTime],其中 Region 为存储桶所在地域,BucketCreateTime 为存储桶 GMT 创建时间
    String
    

    删除自定义域名

    功能说明

    DELETE Bucket domain 用于删除存储桶的自定义域名信息。
    注意
    COS Android SDK 版本需要大于等于 v5.9.8。

    示例代码

    // 存储桶名称,由 bucketname-appid 组成,appid 必须填入,可以在 COS 控制台查看存储桶名称。 https://console.tencentcloud.com/cos5/bucket
    String bucket = "examplebucket-1250000000";
    DeleteBucketDomainRequest deleteBucketDomainRequest =
    new DeleteBucketDomainRequest(bucket);
    cosXmlService.deleteBucketDomainAsync(deleteBucketDomainRequest,
    new CosXmlResultListener() {
    @Override
    public void onSuccess(CosXmlRequest request, CosXmlResult result) {
    // 详细字段请查看api文档或者SDK源码
    DeleteBucketDomainResult deleteBucketDomainResult =
    (DeleteBucketDomainResult) result;
    }
    // 如果您使用 kotlin 语言来调用,请注意回调方法中的异常是可空的,否则不会回调 onFail 方法,即:
    // clientException 的类型为 CosXmlClientException?,serviceException 的类型为 CosXmlServiceException?
    @Override
    public void onFail(CosXmlRequest cosXmlRequest,
    @Nullable CosXmlClientException clientException,
    @Nullable CosXmlServiceException serviceException) {
    if (clientException != null) {
    clientException.printStackTrace();
    } else {
    serviceException.printStackTrace();
    }
    }
    });
    说明
    更多完整示例,请前往 GitHub 查看。
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持