创建预取任务

更新时间:2023-04-04 20:20:38

适用产品

CDN Pro

接口描述

创建一个预取请求,从您的源站预取内容来预热CDN Pro的缓存。通过内容提前预取,可避免大量请求涌入源站服务器。发起预取之前,必须先将域名对应的加速项目部署到生产环境。

调用频率

单用户调用频率:300/5min

推荐使用 Open API在线调试

Open API在线调试功能提供可视化界面在线调试API、支持生成代码示例、快速检索查看API文档等能力。前往调试

请求参数

Body 参数

参数名称描述
nameString
取值范围: <= 1000 字符 预取请求的简短描述。
*fileListList
urlString
取值范围: [ 10 .. 2048 ] 字符 预取的URL。必须以'http'或'https'开头,长度不超过2048个字符。
headersList
如果需要在缓存键中加入请求头,可用该字段指定请求头。
nameString
HTTP 头部名称。
valueString
HTTP 头部值。
regionsList
指定需要预取内容的大洲,以大洲英文全名表示,例如Asia, Europe。未指定时,表示预取内容到所有大洲的服务器。
startTimeString
RFC 3339格式的日期,表示开始预取的时间。必须使用UTC时间,例如'2021-03-06T00:00:00Z'。
webhookString
刷新任务完成时要调用的webhook的ID。webhook是指通过“创建webhook接口”创建的回调接口。

返回参数

响应头

参数名称描述
LocationString
通过Location响应头返回新建的预取任务的URL。URL中包含预取任务的ID,可使用该ID调用'查询预取任务详情'接口来查看预取任务详情。URL示例:Location: http://open.chinanetcenter.com/cdn/prefetches/5dca2205f9e9cc0001df7b33

错误码

错误代码(code)描述(message)HTTP状态码语义
InvalidPrefetchUrlThe file list shouldn't be empty.400文件列表不能为空。
NoSuchDomainThe host 'www.example.com' has not been deployed in the 'production' environment.400指定的域名如 'www.example.com' 未部署到生产环境。
InvalidRegionInvalid region. Must be a continent name.400指定的区域无效。必须以大洲英文名表示。
InvalidTimeThe start time has to be within 24 hours in the future.400开始时间必须在未来24小时内。

示例

400
400
请求示例
复制代码 复制成功
#!/bin/bash
username="example_username"
apiKey="example_apiKey"
date=`env LANG="en_US.UTF-8" date -u "+%a, %d %b %Y %H:%M:%S GMT"`
password=`echo -en "$date" | openssl dgst -sha1 -hmac $apiKey -binary | openssl enc -base64`
curl -i --url "https://open.chinanetcenter.com/cdn/prefetches" \
-X "POST" \
-u "$username:$password" \
-H "Date: $date" \
-H "Accept: application/json" \
-d '{"name": "my new prefetch request", "fileList": [{"url": "http://example.com"}]}'
返回示例
复制代码 复制成功
{
    "code": "InvalidPrefetchUrl",
    "message": "The file list shouldn't be empty."
}
本篇文档内容对您是否有帮助?
有帮助
我要反馈
提交成功!非常感谢您的反馈,我们会继续努力做到更好!