通过 HTTPDNS 服务端解析一个或多个域名。
您可以使用 httpdns.volcengineapi.com 作为请求域名,也可以向 HTTPDNS 服务端 IP 地址发送直连请求。直连请求节省了 HTTPDNS 服务端域名的 DNS 解析耗时。
您可以使用 HTTP 请求或 HTTPS 请求。HTTP 请求和 HTTPS 请求的计费不同。参见 计费说明。
GET https://httpdns.volcengineapi.com/resolve?domain={domain}&account_id={account_id}&sign={sign}×tamp={timestamp}&type={type}&ip={ip}&appid={appid}
GET http://httpdns.volcengineapi.com/resolve?domain={domain}&account_id={account_id}&sign={sign}×tamp={timestamp}&type={type}&ip={ip}&appid={appid}
GET https://{ip_address}/resolve?domain={domain}&account_id={account_id}&sign={sign}×tamp={timestamp}&type={type}&ip={ip}&appid={appid}
GET http://{ip_address}/resolve?domain={domain}&account_id={account_id}&sign={sign}×tamp={timestamp}&type={type}&ip={ip}&appid={appid}
您可以通过 Anycast IP 地址或动态 IP 地址接入 HTTPDNS 服务端。IP 地址接入节省了 HTTPDNS 服务端域名的 DNS 解析耗时。
{ip_address}
替换为您获取的 Anycast IP 地址。说明
Anycast IP 地址接入功能处于公测阶段,暂不对外公开。您可以 提交工单 联系我们获取 Anycast IP 地址。
{ip_address}
替换为您获取的动态 IP 地址。请求头参数仅适用于 软件定义解析 AnyMatch 功能,用于在 DNS 查询请求中传入自定义标识。如果 HTTPDNS 服务端找到了匹配的自定义标识所关联的记录值,就会返回该记录值。
参数名称 | 数据类型 | 参数说明 |
---|---|---|
Am-Tag | String | 字符串型标识,例如 |
Am-ID | String | 数字型标识。必须是整数,例如 |
请求头参数示例:
Am-Tag: hebei/shijiazhuang Am-ID: 123456
参数名称 | 数据类型 | 是否必选 | 参数说明 |
---|---|---|---|
domain | String | 是 | 一个或者多个需要解析的域名。 多个域名使用英文逗号 |
account_id | String | 是 | 您的 Service ID。可以从控制台的 鉴权配置 页面获取。 |
sign | String | 是 | 请求的签名,用来对请求进行鉴权。签名计算方法见 计算签名。 |
timestamp | String | 是 | 签名的 过期时间。时间的格式为 Unix 时间戳,单位是 毫秒。 例如,您发送请求的时间是 2022 年 5 月 20 日 04:32:59(UTC 时间),您希望签名的有效期是 10 分钟,即签名会在 2022 年 5 月 20 日 04:42:59(UTC 时间)失效。那么,您需要把该参数设置为 警告
|
type | Integer | 否 | 解析结果的 IP 地址的类型。该参数的可选值如下:
默认值是 1。 |
ip | String | 否 | 客户端的 IP 地址。 HTTPDNS 服务端可以基于客户端 IP 地址的地理位置和所属网络运营商返回匹配的解析结果。 我们不建议您设置该参数。不设置该参数时,HTTPDNS 服务端默认使用客户端发起解析请求时使用的 IP 地址。HTTPDNS 服务端优先从 X-Real-IP 请求头获取该 IP 地址。如果获取失败,HTTPDNS 服务端从 X-Forwarded-For 请求头中获取第一个 IP 地址。如果依然获取失败,则解析失败。 |
appid | String | 否 | 应用 ID。您可以在控制台创建应用,并把应用的 应用ID 传入 |
参数名称 | 参数类型 | 参数说明 |
---|---|---|
host | String | 请求解析的域名。 |
ttl | Integer | 解析结果的有效时间,单位是秒。您可以按该参数的值缓存解析请求,在解析请求过期后再次请求 HTTPDNS 服务端解析该域名。 |
ips | String[] | 解析结果的 IP 地址列表。 |
cip | String | 客户端的 IP 地址。如果您设置了 |
GET https://httpdns.volcengineapi.com/resolve?domain=www.example.com&account_id=1234567890&sign=65m0fa70a250c431059a4ea9erm51570×tamp=1653021179804
GET https://httpdns.volcengineapi.com/resolve?domain=www.example.com,test.example.com&account_id=1234567890&sign=65m0fa70a250c431059a4ea9erm51570×tamp=1653021179804
{ "cip": "120.52.147.53", "host": "www.example.com", "ips": [ "fec0::1", "220.194.234.254", "101.75.228.67", "60.220.194.103", "218.12.228.81", "121.22.247.247" ], "ttl": 52 }
{ "dns": [ { "host": "www.example.com", "ips": [ "60.220.194.103", "218.12.228.81", "121.22.247.247", "220.194.234.254", "101.75.228.67" ], "ttl": 49 }, { "host": "test.example.com", "ips": [ "119.249.48.221", "119.249.48.219", "119.249.48.185", "119.249.48.220", "119.249.48.222", "119.249.48.237", "119.249.48.236" ], "ttl": 240 } ], cip: "120.52.147.45", }