Cloudflare Api v4 php Curl -error方法POST不适用于该URI

时间:2017-10-21 20:53:52

标签: php api curl cloudflare

我是编码和使用apis的noob。 我正在使用此代码通过cloudflare api编辑rocketloader选项。



<?php

$ch = curl_init();
$headers = array(
                 'X-Auth-Email: <email>',
                 'X-Auth-Key: <key>',
                 'Content-Type: application/json',
                  );
$data = array(
              'value' => 'on',
               );
$json = json_encode($data);
curl_setopt($ch, CURLOPT_URL, "https://api.cloudflare.com/client/v4/zones/<zone id>/settings/rocket_loader");
curl_setopt($ch, CURLOPT_POSTFIELDS, $json);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_exec($ch);
curl_close($ch);

?>
&#13;
&#13;
&#13;

显示此错误。

&#13;
&#13;
   Method POST not available for that URI.
&#13;
&#13;
&#13;

代码有什么问题?你能救我吗?

2 个答案:

答案 0 :(得分:1)

根据CloudFlare API,您尝试访问的终端应该是PATCH请求,当您使用POST时,您正在使用CURLOPT_POSTFIELDS请求访问该请求。请尝试在curl_exec之前添加以下内容:

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PATCH');

答案 1 :(得分:0)

使用

$data = array('value' => on);

删除引号!