嘿所以尝试使用API来清除单个链接但是我在此链接中用标识符替换了什么? https://api.cloudflare.com/client/v4/zones/:identifier/purge_cache
任何人都知道它的确切位置,cloudflare支持是浪费时间。
答案 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"