全站加速、移动加速、应用安全解决方案、政企安全加速解决方案、IPv6一体化解决方案、区块链安全加速解决方案、下载分发、电商安全加速解决方案、网页加速、金融安全加速解决方案、IPv6安全加速解决方案、点播分发、应用安全加速解决方案
通过接口自助实现修改域名缓存时间配置,实现针对客户的请求实现定制缓存功能。节点缓存分为常规缓存和带查询串URl缓存,在常规缓存里您可以设置缓存时间以及对某些影响缓存的头进行忽略处理,以及是否缓存空文件等,带查询串Url可以设置缓存成多份还是缓存成去掉问号后的url(增加命中率)。接口调用url的*可为域名名称或域名id
Open API在线调试功能提供可视化界面在线调试API、支持生成代码示例、快速检索查看API文档等能力。前往调试
参数名称 | 描述 |
---|---|
*domain-nameString | 需要查询配置的域名或域名id |
参数名称 | 描述 |
---|---|
*cache-time-behaviorsList | 缓存时间配置
注意:
1. 需要取消缓存时间配置设置时,可以传入空节点 |
data-idLong | 中文:配置多组配置时,具体某组配置的id。dataId可以通过查询接口获取。
注意:
1、如果有传dataId,说明指定修改其中一组配置项内容,不需求修改其他组配置内容不需要入参;
2、如果入参多组配置,其中有些组配置有传dataId,有些没有传,则有传dataId的表示修改具体某组配置,没有传dataId的表示在原来基础上新增一组配置;
3、如果入参都没有传dataId,表示用本次的配置全量覆盖原先配置;
4、如果入参没有传任何配置项参数,只传了域名和二级标签,表示清空这个该接口对应的域名配置;
5、如果一组配置没有具体的配置项,则dataId必填,且值要为实际存在的dataId,此时表示清空这个dataId对应的一组配置;
6、不允许一组配置没有指定具体的配置项也没有dataId。 |
path-patternString | url匹配模式,支持正则,如果是全部匹配,入参可以配置为:* |
except-path-patternString | 例外的url匹配模式,某些URL除外:如abc.jpg,不做内容重定向
客户入参参考:^https?://[^/]+/.*\.m3u8 |
custom-patternString | 指定常用类型:选择缓存域名的是全部文件还是首页。入参参考值:
all:全部文件
homepage:首页 |
file-typeString | 文件类型:指定需要缓存的文件类型。
文件类型包括:gif png bmp jpeg jpg html htm shtml mp3 wma flv mp4 wmv zip exe rar css txt ico js swf
如果需要全部类型,则直接传all。多个以分号隔开,all和具体文件类型不能同时配置。 |
custom-file-typeString | 自定义文件类型:在指定文件类型外根据自身需求,填写适当的可识别文件类型。可以搭配file-type使用。如果file-type也有配置,实际生效的文件类型是两个入参的总和 |
specify-url-patternString | 指定URL缓存:根据需求指定url进行缓存
入参不支持含http(s):// 开头的URI格式 |
directoryString | 目录:指定目录缓存。
输入合法的目录格式。多个以英文分号隔开 |
cache-ttlString | 缓存时间:设置缓存对象对应的时间
入参格式:整数加单位,比如20s、30m、1h、2d,不缓存设置为0。不输入单位默认是秒
缓存时间理论上没有上限限制,这个时间根据客户自身的需求设定,如果客户觉得其中一些文件,变更不频繁,那么就设置长一点。例如,文本类的js,css,html等可以设置得短一些,图片、视频音频类的可以设置的长一点(因为缓存时间会因文件热度算法,旧文件会被新文件替换掉,最长建议不要超过一个月) |
ignore-cache-controlString | 忽略源站不缓存头。可选值为true和false,用于忽略请求头中cache-control的两种配置(private,no-cache)和客户端设置的Authorization。
ture表示会忽略掉源站对于这三者的设定。使得资源能够以cache-control: public的方式缓存在服务节点上,然后我们的节点才能缓存这种类型的资源,提供加速服务。
false表示当源站对某种资源设定了cache-control: private,cache-control:no-cache或指定根据authorization进行缓存时,我们的服务节点将不会对此类文件进行缓存。 |
is-respect-serverString | 尊重服务端:加速是否要按源站缓存时间优先。
可选值:true和false
true:表示重服务端时间优先
false:CDN配置的缓存时间优先 |
ignore-letter-caseString | 忽略大小写,可选值为true或false,true表示忽略大小写;false表示不忽略大小写;
新增配置项时,不传默认为 true |
reload-manageString | reload处理规则,可选项:ignore或者if-modified-since
if-modified-since:表示要转成if-modified-since
ignore:表示忽略客户端刷新 |
priorityString | 表示客户多组重定向内容的优先执行顺序。数字越大,优先级越高。
新增配置项时,不传默认为 10
如果传了值,不能为空 |
ignore-authentication-headerString | 忽略鉴权头部Authentication,可选值为true和false。默认为不忽略。 |
参数名称 | 描述 |
---|---|
codeString | 错误代码,当HTTPStatus不为202时出现,表示当前请求调用的错误类型 |
messageString | 响应信息,成功时为success |
错误代码(code) | 描述(message) | HTTP状态码 | 语义 |
---|---|---|---|
InvalidParameter | The request has null config with null data-id, please remove it. | 400 | 其他属性都为空,dataId不能为空 |
#!/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/api/config/cachetime/123344" \ -X "PUT" \ -u "$username:$password" \ -H "Date: $date" \ -H "Accept: application/json" \ -H "Content-Type:application/json" \ -d '{ "cache-time-behaviors": [ { "data-id": "31506459", "path-pattern": ".*", "cache-ttl": "30s", "ignore-cache-control": "true", "is-respect-server": "false", "ignore-letter-case": "true", "reload-manage": "ignore", "priority": "10" }, { "path-pattern": ".*", "cache-ttl": "30s", "ignore-cache-control": "false", "is-respect-server": "true", "ignore-letter-case": "true", "reload-manage": "if-modified-since", "priority": "10" } ] }'
HTTP/1.1 202 Accepted Date: Fri, 17 May 2017 06:33:26 GMT Content-Type: application/json;charset=utf-8 x-cnc-request-id:c54cbbb4-19fe-407a-930c-3988b62ed2fd {"message":"success"}