CDN Pro
创建一个刷新任务来强制刷新存储在CDN Pro缓存服务器中的内容。当您更新了源站的内容,并希望访客立即看到更新后的内容,您可以创建一个刷新任务立即刷新内容。
Open API在线调试功能提供可视化界面在线调试API、支持生成代码示例、快速检索查看API文档等能力。前往调试
参数名称 | 类型 | 必填 | 描述 | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
name | String | 否 | 刷新请求的说明。 | ||||||||||||||||||
fileUrls | List | 否 | 要刷新的文件的URL。URL不能包含星号字符'*'。如果URL中的目录或文件名包含'%'等特殊符号,需要先进行URL编码。每个URL长度不能超过2048个字符。 | ||||||||||||||||||
fileHeaders | List | 否 | 如果文件的缓存键与请求头相关,则可以指定请求头和值来刷新相应的缓存文件。此处指定的请求头和值将应用于fileUrls中的所有条目。 | ||||||||||||||||||
name | String | 否 | HTTP 头部名称 | ||||||||||||||||||
value | String | 否 | HTTP 头部的值 | ||||||||||||||||||
dirUrls | List | 否 | <= 20 条目
要刷新的目录的URL。URL必须以http:// 或者 https://开头,每条URL最多只能包含2048个字符。 在URL中使用'*'字符可以匹配多个文件或目录。如果一条URL中带有多组'*',则只有最后一个'*'或'**'会被当成通配符来进行匹配,其它的'*'只会被当成普通字符。
| ||||||||||||||||||
regexPatterns | List | 否 | <= 2 条目
用于匹配缓存键的正则表达式。
每个表达式必须以
{协议}://{域名}/ 格式开头。其中,{协议} 可以是 http, https,或any(表示不限协议)。
示例:
https://test.domain.com/my.*\.(jpg|png)\?q=
出于性能考虑,使用正则表达式有以下限制: 在域名后面的正则表达式最多只能包含126个字符。 最多只能包含两个限定符('*'、'+'或',}')。 限定符的上限不能超过59,例如{1,59} | ||||||||||||||||||
action | String | 否 | 取值范围: delete, invalidate 默认值: invalidate 指定刷新类型,包括完全删除(delete)和标记为无效(invalidate)。 | ||||||||||||||||||
target | String | 是 | 取值范围: staging, production 指定刷新请求应用于演练环境还是生产环境。 | ||||||||||||||||||
webhook | String | 否 | 刷新任务完成时要调用的webhook的ID。 |
参数名称 | 类型 | 描述 |
---|---|---|
Location | String | 通过Location响应头返回新建的刷新任务的URL。URL中包含刷新任务的ID,可使用该ID调用'查询刷新任务详情'接口来查看刷新任务详情。URL示例:Location: http://open.chinanetcenter.com/cdn/purges/5dca2205f9e9cc0001df7b33 |
错误代码(code) | 描述(message) | HTTP状态码 | 语义 |
---|---|---|---|
InvalidPurgeUrl | The host 'test.domain.info' has not been deployed in the 'production' environment. | 400 | 指定的域名尚未部署至指定的环境。 |
InvalidPurgeUrl | The purge URL 'http://domain.info/newfile[1]{tes`|t^}p.png' is invalid. Special letters need to be encoded. | 400 | URL中带有特殊字符的,必须先进行URL编码。 |
InvalidPurgeUrl | The purge URL 'http://domain.info/i/image/gallery/123%abc.jpg' is invalid. Special letters need to be encoded. | 400 | URL中带有特殊字符的,必须先进行URL编码。 |
#!/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/purges" \ -X "POST" \ -u "$username:$password" \ -H "Date: $date" \ -H "Accept: application/json" \ -d '{ "fileUrls": [ "http://domain.info/i/image/gallery/123.jpg", "http://test.domain2.com/2.txt?q1=1&q2=3" ], "fileHeaders": [ { "name": "customheader1", "value": "test1" }, { "name": "customheader2", "value": "test2" } ], "action": "invalidate", "target": "production" }'
{ "code": "InvalidPurgeUrl", "message": "The host 'test.domain.info' has not been deployed in the 'production' environment." }