我正在尝试使用PHP和cURL进行DELETE http请求。
我已经在很多地方阅读了如何做的内容,但是似乎对我没有任何帮助。
这是我的方法:
public function curl_req($path,$json,$req)
{
$ch = curl_init($this->__url.$path);
$data = json_encode($json);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $req);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json','Content-Length: ' . strlen($data)));
$result = curl_exec($ch);
$result = json_decode($result);
return $result;
}
然后,我继续使用我的函数:
public function deleteUser($extid)
{
$path = "/rest/user/".$extid."/;token=".$this->__token;
$result = $this->curl_req($path,"","DELETE");
return $result;
}
这给了我HTTP内部服务器错误。在我的其他函数中,使用与GET和POST相同的curl_req方法,一切运行顺利。
那我在做什么错?
3
内部服务器错误表示脚本收到您的请求时出现问题。
—
Brad 2012年
谢谢布拉德-我知道,我想是因为它没有作为DELETE请求发送。如果我为Firefox使用REST客户端插件,并使用DELETE发送完全相同的请求,则效果很好。因此,它看起来像cURL没有将请求发送为DELETE。
—
博利2012年
谢谢马克,但这似乎像他在做我一样吗?用PHP发送DELETE请求是不可能的吗?如果还有没有cURL的其他方法,我也可以使用它。
—
博利2012年