无法找到Cloudflare api错误区域标识符

时间:2016-07-05 06:06:21

标签: cloudflare

嘿所以尝试使用API​​来清除单个链接但是我在此链接中用标识符替换了什么? https://api.cloudflare.com/client/v4/zones/:identifier/purge_cache

任何人都知道它的确切位置,cloudflare支持是浪费时间。

2 个答案:

答案 0 :(得分:0)

根据CloudFlare API documentation for Purge Cache,您可以将HTTP DELETE请求中的文件数组发布到该端点。

现在,该标识符是区域ID,为此,您可以在Zones端点上使用GET请求获取列表,例如:

$ curl -X GET "https://api.cloudflare.com/client/v4/zones?name=example.com&status=active&page=1&per_page=20&order=status&direction=desc&match=all" \
-H "X-Auth-Email: user@example.com" \
-H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
-H "Content-Type: application/json"

ID将出现在返回的“result”变量中。详细信息如下:List zones

获得此ID后,您可以将其作为DELETE请求中的标识符传递。

cURL示例:

$ curl -X DELETE "https://api.cloudflare.com/client/v4/zones/023e105f4ecef8ad9ca31a8372d0c353/purge_cache" \
-H "X-Auth-Email: user@example.com" \
-H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
-H "Content-Type: application/json" \
--data '{"files":["http://www.example.com/css/styles.css"],"tags":["some-tag","another-tag"]}'

响应:

{
  "success": true,
  "errors": [],
  "messages": [],
  "result": {
    "id": "023e105f4ecef8ad9ca31a8372d0c353"
  }
}

答案 1 :(得分:0)

mjsa是对的,但您可能正在使用CloudFlare的防火墙。

我遇到了与CloudFlare阻止我的cURL请求完全相同的问题。我设法通过向我的请求添加User-Agent标头来解决,或者更确切地说绕过它。例如:

"User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.87 Safari/537.36"