融合 CDN

  • 缓存刷新与查询

    最近更新时间:2018-01-17 11:28:43

    缓存刷新,是指删除客户资源在 CDN 节点的缓存,以便更新新的资源。具体做法是客户提交资源 url 到 CDN,由 CDN 来操作刷新。

    访问域名

    Host: fusion.qiniuapi.com
    

    认证授权

    Authorization: <access_token>
    

    access_token 详细描述请查阅这里

    接口地址

    /v2/tune/refresh
    

    刷新

    请求语法

    POST /v2/tune/refresh HTTP/1.1
    Authorization:<access_token>
    Content-Type: application/json
    
    {
        "urls":[<url1>, <url2>, <url3>, ...],
        "dirs":[<dir1>, <dir2>, <dir3>, ...],
    }
    

    请求内容

    参数 类型 说明
    urlN array 要刷新的单个url列表,总数不超过100条;单个url,即一个具体的url,例如:http://bar.foo.com/index.html
    dirN array 要刷新的目录url列表,总数不超过10条;目录dir,即表示一个目录级的url,例如:http://bar.foo.com/dir/,也支持在尾部使用通配符,例如:http://bar.foo.com/dir/*

    注意事项

    • 请输入资源 url 完整的绝对路径,由 http:// 或 https:// 开始。
    • 资源 url 不支持通配符,例如:不支持 http://www.test.com/abc/\*.\*
    • 进行目录刷新时,资源 url 需要以 / 结尾,例如:http://www.test.com/abc/
    • 带参数的 url 刷新,根据其域名缓存配置是否忽略参数缓存决定刷新结果。如果配置了时间戳防盗链的资源 url 提交时刷新需要去掉 sign 和 t 参数。
    • 当前目录刷新权限默认关闭,如需开通权限请通过工单联系我们审核开通。

    响应状态码

    HTTP状态码 含义 说明
    200 success 成功
    400031 invalid url 请求中存在无效的 url,请确保 url 格式正确
    400032 invalid host 请求中存在无效的域名,请确保域名格式正确
    400034 refresh url limit error 请求次数超出当日刷新限额
    400036 invalid request id 无效的请求 id
    400037 url has existed url 正在刷新中
    400038 refresh dir authority error 没有刷新目录的权限, 如果需要请联系技术支持
    500000 internal error 服务端内部错误,请联系技术支持

    响应内容

    HTTP/1.1 200 OK
    Content-Type: application/json
    
    {
        "code": <custom code>,
        "error": <error string>,
        "requestId": <request id>,
        "invalidUrls": [<url1>, <url2>, <url3>, ...],
        "invalidDirs": [<dir1>, <dir2>, <dir3>, ...],
        "urlQuotaDay": <url quota one day >,
        "urlSurplusDay": <url surplus one day >,
        "dirQuotaDay": <dir quota one day >,
        "dirSurplusDay": <dir surplus one day >,
    }
    
    参数 类型 必要性 说明
    code int 必须 自定义错误码,整型,见自定义状态码
    error string 必须 自定义错误码描述,字符串
    requestId string 可选 刷新请求id,只有在任务被接受时才有值
    invalidUrls string array 可选 无效的url列表
    invalidDirs string array 可选 无效的dir列表
    urlQuotaDay int 可选 每日的刷新url限额
    urlSurplusDay int 可选 每日的当前剩余的刷新url限额
    dirQuotaDay int 可选 每日的刷新dir限额
    dirSurplusDay int 可选 每日的当前剩余的刷新dir限额

    注意事项

    • 在请求成功时 code 为 200,requestId、urlQuotaDay、urlSurplusDay、dirQuotaDay、dirSurplusDay才会有有效值,否则为空。
    • 在请求失败时 code 为非 200,error 中包含描述信息。

    刷新示例

    下面是命令行示例:

    分两步:
    第一步生成token,如下:
    echo "/v2/tune/refresh" |openssl dgst -binary -hmac "用户SK" -sha1 |base64 | tr + - | tr / _      回车
    生成的token
    
    第二步请求数据:
    curl -X POST -H "Authorization: QBox <用户AK>:<生成的token>" http://fusion.qiniuapi.com/v2/tune/refresh -d '{"urls":["<用户url>"]}' -H 'Content-Type: application/json'
    
    例如:
    curl -X POST -H 'Authorization: QBox Jde5hsF3IZL7SZ6yZ2mJbtJ-3F19voJ-ifxCf:RCFuWBLdFKBd_xjnKUhSyuvJU=' http://fusion.qiniuapi.com/v2/tune/refresh -d '{"urls":["http://www.test.com/test01"]}' -H 'Content-Type: application/json'
    
    {"code":200,"error":"success","requestId":"575d1930f9537d3f2600003d","invalidUrls":null,"invalidDirs":null,"urlQuotaDay":100,"urlSurplusDay":99,"dirQuotaDay":10,"dirSurplusDay":10}
    

    刷新查询

    接口地址

    /v2/tune/refresh/list
    

    请求语法

    POST http://<Host>/v2/tune/refresh/list
    Authorization:<access_token>
    
    {
        "requestId": <request id>,  
        "isDir": <dir flag>,
        "urls":[<url1>, <url2>, <url3>, ...],
        "state": <state>,
        "pageNo": <page no>,
        "pageSize": <page size>,
    }
    

    请求内容

    参数 类型 说明
    requestId string 指定要查询记录所在的刷新请求id
    isDir string 指定是否查询目录,取值为 yes/no
    urls string 要查询的url列表,每个url可以是文件url,也可以是目录url
    state string 指定要查询记录的状态,取值processing/success/failure
    pageNo int 要求返回的页号,默认为0
    pageSize int 要求返回的页长度,默认为100

    注意事项

    • 输入参数可选部分全部为空时,服务端返回无效参数错误。

    响应状态码

    HTTP状态码 含义 说明
    200 success 成功
    400000 invalid input 无效的输入参数
    500000 internal error 服务端内部错误
    500005 query data error 服务端查询数据错误

    响应内容

    HTTP/1.1 200 OK
    Content-Type: application/json
    
    {
        "code": <custom code>,
        "error": <error string>,
        "total": <total count>,
        "pageNo": <page no>,
        "pageSize": <page size>,
        "currentSize": <current size>,
        "items": [{
            "uid": <user uid>,
            "requestId": <request id>,
            "url": <url>,
            "state": <state>,
            "stateDetail": <stateDetail>,
            "createAt": <create time>,
            "beginAt": <begin time>,
            "endAt": <end time>,
        }, ...],
    }
    
    参数 类型 必要性 说明
    code int 必须 自定义错误码,整型,见自定义状态码
    error string 必须 自定义错误码描述,字符串
    total int 可选 当前条件下查询的记录总数
    pageNo int 可选 要查询的页号
    pageSize int 可选 要返回的页长度
    currentSize int 可选 当前实际返回的页长度
    uid string 可选 用户id
    requestId string 可选 记录所在的刷新请求id
    url string 可选 url
    state string 可选 刷新状态,取值为success/processing/failure
    stateDetail string 可选 刷新状态描述信息
    createAt string 可选 当前记录创建时间,格式为xxxx-xx-xx xx:xx:xx,例如2015-11-01 16:05:05
    beginAt string 可选 当前记录开始时间,格式为xxxx-xx-xx xx:xx:xx,例如2015-11-01 16:05:25。
    endAt string 可选 当前记录结束时间,格式为xxxx-xx-xx xx:xx:xx,例如2015-11-01 16:09:05

    刷新查询示例

    下面是命令行示例:

    分两步:
    第一步生成token,如下:
    echo "/v2/tune/refresh/list" |openssl dgst -binary -hmac "用户SK" -sha1 |base64 | tr + - | tr / _      回车
    生成的token
    
    第二步请求数据:
    curl -X POST -H "Authorization: QBox <用户AK>:<生成的token>" http://fusion.qiniuapi.com/v2/tune/refresh/list -d '{"urls":["<用户url>","pageNo":<page no>,"pageSize":<page size>]}' -H 'Content-Type: application/json'
    
    例如:
    curl -X POST -H 'Authorization: QBox Jde5hsF3IZL7SZ6yZ2mJbtJ-3F19voJ-ifxCf:RCFuWBLdFKBd_xjnKUhSyuvJU=' http://fusion.qiniuapi.com/v2/tune/refresh/list -d '{"urls":["http://www.test.com/test01",“pageSize”:10, "pageNo":0]}' -H 'Content-Type: application/json'
    
    {"code":200,"error":"success","total":1,"pageNo":0,"pageSize":10,"currentSize":1,"items":[{"uid":1100000009,"requestId":"57edce1a23232391821e303b","url":"http://www.test.com/test01","state":"success","stateDetail":"","createAt":"2015-09-30 10:29:46","beginAt":"2015-09-30 10:29:48","endAt":"2015-09-30 10:30:08"}]}
    
    以上内容是否对您有帮助?
  • Icon free helper
    Close