更新时间:2024-05-08 GMT+08:00
分享

查询加速域名

功能介绍

查询加速域名

调用方法

请参见如何调用API

URI

GET /v1.0/cdn/domains

表1 Query参数

参数

是否必选

参数类型

描述

domain_name

String

加速域名,采用模糊匹配的方式。(长度限制为1-255字符)。

business_type

String

加速域名的业务类型。取值:

  • web(网站加速)

  • download(文件下载加速)

  • video(点播加速)

  • wholeSite(全站加速)

domain_status

String

加速域名状态。取值意义:

  • online表示“已开启”

  • offline表示“已停用”

  • configuring表示“配置中”

  • configure_failed表示“配置失败”

  • checking表示“审核中”

  • check_failed表示“审核未通过”

  • deleting表示“删除中”。

service_area

String

华为云CDN提供的加速服务范围,包含:

  • mainland_china 中国大陆

  • outside_mainland_china 中国大陆境外

  • global 全球。

page_size

Integer

每页加速域名的数量,取值范围1-10000,默认值为30。

page_number

Integer

查询的页码,即:从哪一页开始查询,取值范围1-65535,默认值为1。

show_tags

Boolean

展示标签标识 true:展示 false:不展示。

exact_match

Boolean

精准匹配 true:开启 false:关闭。

enterprise_project_id

String

当用户开启企业项目功能时,该参数生效,表示查询资源所属项目,"all"表示所有项目。注意:当使用子账号调用接口时,该参数必传。

您可以通过调用企业项目管理服务(EPS)的查询企业项目列表接口(ListEnterpriseProject)查询企业项目id。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。

通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

响应参数

状态码: 200

表3 响应Body参数

参数

参数类型

描述

total

Integer

总条数。

domains

Array of Domains objects

域名信息。

表4 Domains

参数

参数类型

描述

id

String

加速域名ID。

domain_name

String

加速域名。

business_type

String

域名业务类型,若为web,则表示类型为网站加速;若为download,则表示业务类型为文件下载加速;若为video,则表示业务类型为点播加速;若为wholeSite,则表示类型为全站加速。

domain_status

String

加速域名状态。取值意义:

  • online表示“已开启”

  • offline表示“已停用”

  • configuring表示“配置中”

  • configure_failed表示“配置失败”

  • checking表示“审核中”

  • check_failed表示“审核未通过”

  • deleting表示“删除中”。

cname

String

加速域名对应的CNAME。

sources

Array of Sources objects

源站配置。

domain_origin_host

DomainOriginHost object

域名回源HOST配置。

https_status

Integer

是否开启HTTPS加速。

create_time

Long

域名创建时间,相对于UTC 1970-01-01到当前时间相隔的毫秒数。

modify_time

Long

域名修改时间,相对于UTC 1970-01-01到当前时间相隔的毫秒数。

disabled

Integer

封禁状态(0代表未禁用;1代表禁用)。

locked

Integer

锁定状态(0代表未锁定;1代表锁定)。

auto_refresh_preheat

Integer

自动刷新预热(0代表关闭;1代表打开)。

service_area

String

华为云CDN提供的加速服务范围,包含:mainland_china中国大陆、outside_mainland_china中国大陆境外、global全球。

range_status

String

Range回源状态。

follow_status

String

回源跟随状态。

origin_status

String

是否暂停源站回源(off代表关闭 on代表开启)。

banned_reason

String

域名禁用原因。

locked_reason

String

域名锁定原因。

enterprise_project_id

String

当用户开启企业项目功能时,该参数生效,表示查询资源所属项目,不传表示查询默认项目。注意:当使用子账号调用接口时,该参数必传。

您可以通过调用企业项目管理服务(EPS)的查询企业项目列表接口(ListEnterpriseProject)查询企业项目id。

tags

Array of EpResourceTag objects

标签信息。

表5 Sources

参数

参数类型

描述

domain_id

String

加速域名id。

ip_or_domain

String

源站IP(非内网IP)或者域名。

origin_type

String

源站类型取值:ipaddr:源站IP、 domain:源站域名、obs_bucket:OBS桶域名。

active_standby

Integer

主备状态,1代表主源站,0代表备源站。

enable_obs_web_hosting

Integer

是否开启OBS静态网站托管(0表示关闭,1表示则为开启),源站类型为obs_bucket时传递。

表6 DomainOriginHost

参数

参数类型

描述

domain_id

String

域名ID。

origin_host_type

String

回源host的类型,accelerate:选择加速域名作为回源host域名, customize:使用自定义的域名作为回源host域名。

customize_domain

String

回源host域名。返回加速域名主源站设置的HOST域名,如果加速域名有多个主源站且对应多个回源HOST,则返回源站配置中的第一个主源站对应的HOST域名。

表7 EpResourceTag

参数

参数类型

描述

key

String

资源标签key。

value

String

资源标签value值。

状态码: 400

表8 响应Body参数

参数

参数类型

描述

error

ErrMsg object

用于返回具体的错误码和错误消息

表9 ErrMsg

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

请求示例

GET https://cdn.myhuaweicloud.com/v1.0/cdn/domains?domain_name=www.example.com&page_size=10&page_number=1&enterprise_project_id=0

响应示例

状态码: 200

成功响应。

{
  "total" : 1,
  "domains" : [ {
    "sources" : [ {
      "origin_type" : "domain",
      "ip_or_domain" : "www.example.com",
      "active_standby" : 1
    } ],
    "cname" : "www.example.com.c.test.com",
    "id" : "ab1234a*********************g56",
    "domain_name" : "www.example.com",
    "business_type" : "web",
    "service_area" : "mainland_china",
    "domain_status" : "online",
    "https_status" : 0,
    "create_time" : 1516861994806,
    "modify_time" : 1532405346365,
    "domain_origin_host" : {
      "domain_id" : "ab1234a*********************g56",
      "origin_host_type" : "customize",
      "customize_domain" : "www.example.com"
    },
    "disabled" : 0,
    "locked" : 0,
    "range_status" : "off",
    "follow_status" : "off",
    "origin_status" : "on",
    "auto_refresh_preheat" : 0,
    "tags" : [ {
      "key" : "string",
      "value" : "string"
    } ]
  } ]
}

SDK代码示例

SDK代码示例如下。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.GlobalCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.cdn.v2.region.CdnRegion;
import com.huaweicloud.sdk.cdn.v2.*;
import com.huaweicloud.sdk.cdn.v2.model.*;


public class ListDomainsSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");

        ICredential auth = new GlobalCredentials()
                .withAk(ak)
                .withSk(sk);

        CdnClient client = CdnClient.newBuilder()
                .withCredential(auth)
                .withRegion(CdnRegion.valueOf("<YOUR REGION>"))
                .build();
        ListDomainsRequest request = new ListDomainsRequest();
        request.withDomainName("<domain_name>");
        request.withBusinessType("<business_type>");
        request.withDomainStatus("<domain_status>");
        request.withServiceArea("<service_area>");
        request.withPageSize(<page_size>);
        request.withPageNumber(<page_number>);
        request.withShowTags(<show_tags>);
        request.withExactMatch(<exact_match>);
        request.withEnterpriseProjectId("<enterprise_project_id>");
        try {
            ListDomainsResponse response = client.listDomains(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# coding: utf-8

from huaweicloudsdkcore.auth.credentials import GlobalCredentials
from huaweicloudsdkcdn.v2.region.cdn_region import CdnRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkcdn.v2 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = __import__('os').getenv("CLOUD_SDK_AK")
    sk = __import__('os').getenv("CLOUD_SDK_SK")

    credentials = GlobalCredentials(ak, sk) \

    client = CdnClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(CdnRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = ListDomainsRequest()
        request.domain_name = "<domain_name>"
        request.business_type = "<business_type>"
        request.domain_status = "<domain_status>"
        request.service_area = "<service_area>"
        request.page_size = <page_size>
        request.page_number = <page_number>
        request.show_tags = <ShowTags>
        request.exact_match = <ExactMatch>
        request.enterprise_project_id = "<enterprise_project_id>"
        response = client.list_domains(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/global"
    cdn "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cdn/v2"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cdn/v2/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cdn/v2/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")

    auth := global.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        Build()

    client := cdn.NewCdnClient(
        cdn.CdnClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.ListDomainsRequest{}
	domainNameRequest:= "<domain_name>"
	request.DomainName = &domainNameRequest
	businessTypeRequest:= "<business_type>"
	request.BusinessType = &businessTypeRequest
	domainStatusRequest:= "<domain_status>"
	request.DomainStatus = &domainStatusRequest
	serviceAreaRequest:= "<service_area>"
	request.ServiceArea = &serviceAreaRequest
	pageSizeRequest:= int32(<page_size>)
	request.PageSize = &pageSizeRequest
	pageNumberRequest:= int32(<page_number>)
	request.PageNumber = &pageNumberRequest
	showTagsRequest:= <show_tags>
	request.ShowTags = &showTagsRequest
	exactMatchRequest:= <exact_match>
	request.ExactMatch = &exactMatchRequest
	enterpriseProjectIdRequest:= "<enterprise_project_id>"
	request.EnterpriseProjectId = &enterpriseProjectIdRequest
	response, err := client.ListDomains(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。

状态码

状态码

描述

200

成功响应。

400

错误响应。

错误码

请参见错误码

分享:

    相关文档

    相关产品