缓存规则设置
通过该API可以针对目录,文件名和全路径配置缓存规则。
- 根据目录进行配置:目录必须以 "/" 开头,比如: "/pic", "/doc", "/htdoc/data" 等等。后台会匹配指定目录下的所有文件,包括子目录*
- 根据文件后缀配置:常用文件后缀名,比如:"jpg", "png", "gif", "txt", "m4v", "mp3" 等等。后台会匹配 所有文件夹下 指定的文件后缀。
- 根据全路径配置:用来指定 一个文件,必须以 "/" 开头。比如:"/sites/doc/example.doc"。注意:如果用户填的全路径是"/",则它匹配首页。
注意 用户填写配置规则时,字符串中不要包含 “{”, “}”, “(”, “)”, “[”, “]”, “.”, “?", “*”, “\”, “^”, “$” 等特殊字符。
注意 时间填为0表示禁止缓存,不缓存规则优先执行。
请求
方法
| 请求 URI
|
PUT |
https://restapi.cdn.azure.cn/subscriptions/{subscriptionId}/endpoints/{endpointId}/cacherules?apiVersion=1.0 |
URI参数
参数名
| 描述
|
subscriptionId |
订阅唯一标识 |
endpointId |
目标节点唯一标识 |
请求包头 |
描述 |
x-azurecdn-request-date |
必填。符合yyyy-MM-dd HH:mm:ss格式的UTC当前请求时间 |
Authorization |
必填。授权头请参考CDN API签名机制 |
content-type |
必填。application/json |
请求 Body
{
"Rules": [
{
"Type": "Dir",
"Items": [
"/test1/",
"/test2/"
],
"TTL": 86400
},
{
"Type": "Suffix",
"Items": [
"7z",
"apk",
"wdf",
"cab"
],
"TTL": 2592000
},
{
"Type": "FullUri",
"Items": [
"/test1/test.xml",
"/test2/test.txt"
],
"TTL": 86400
},
],
"IgnoreCacheControl": false,
"IgnoreCookie": false,
"IgnoreQueryString": false
}
参数名称
| 描述
|
TTL |
缓存时间,单位为秒 |
IgnoreCacheControl |
是否忽略返回头中的cache-control头部对请求内容进行缓存
|
IgnoreCookie |
是否忽略返回头中的set-cookie头部对请求内容进行缓存
|
IgnoreQueryString |
是否忽略查询参数对请求内容进行缓存
|
Type |
缓存规则类型。
- Suffix: 基于文件拓展名进行缓存
- Dir: 对指定目录下的所有文件进行缓存
- FullUri: 对指定路径的文件进行缓存
|
响应
响应由状态码,响应 headers以及响应 body组成。
状态码
状态码
| 描述
|
202 |
表明服务器成功接受请求 |
其他 |
表示出错的通用回复 |
响应包头
|
描述
|
X-Correlation-Id |
该请求唯一标识,用于追踪请求信息。 |
响应 Body
请求成功的JSON示例:
{
"Succeeded": true,
"IsAsync": true,
"AsyncInfo": {
"TaskTrackId": "b520c544-ec34-4ac4-86f5-5394363919c3",
"TaskStatus": "Processing"
}
}
参数名称
| 描述
|
TaskTrackId |
操作唯一标识,可用于查询进度 |
TaskStatus |
任务状态。
- NotSet: 状态未知
- Processing: 正在处理
- Succeeded: 成功
- Failed: 失败
|
请求失败的JSON示例:
{
"Succeeded": false,
"ErrorInfo": {
"Type": "MissingAuthorizationHeader",
"Message": "Missing authorization header."
}
}
参数名称
| 描述
|
Type |
错误类型
- CredentialInvalid:凭据不合法
- ParameterMissing:缺少参数
- ParameterInvalid:参数不合法
- MissingAuthorizationHeader:缺少Authorization请求头
- InvalidRequestDateHeader:请求时间不合法
- MissingRequestDateHeader:缺少请求时间头
- AuthorizationHeaderExpired:Authorization请求头已失效
- InvalidAuthorizationHeader:Authorization请求头不合法
- ApiKeyNotFound:API密钥不存在
- InvalidApiKey:API密钥不合法
- WrongSignature:签名不对
- SubscriptionNotFound:订阅不存在
- EndpointDoesNotBelongToSubscription:节点不属于订阅
- EndpointNotInActiveState:节点不处于活跃状态
- EndpointNotFound:节点不存在
- MaliciousItemPathDetected:检查到恶意路径
- PermissionDenied:权限不够
- RequestThrottled:请求被限流
|
Message |
错误信息 |