我有一个卷曲请求:
curl -X PUT \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--header "x-api-token: API_TOKEN" \
--header "x-api-user: API_USER" \
--data '{"connection_id":"533905657015830359"}' \
"https://someserver/origination/numbers/%2B17032638425"
从命令行可以正常工作。当我尝试使用php脚本运行它时,它在详细响应中失败并带有404。
$url = "https://someServer/origination/numbers/%2B17032638425";
$postdata = json_encode(array('connection_id'=>'533905657015830359'));
$ch = curl_init($url);
curl_setopt_array($ch, array(
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_VERBOSE => TRUE,
CURLOPT_POST => 1,
CURLOPT_POSTFIELDS => $postdata
));
$headers = ['Content-Type: application/json','Accept: application/json','x-api-user: SOME-USER','x-api-token: SOME-TOKEN'];
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($ch);
我在这里做了一些令人讨厌的错误吗?
答案 0 :(得分:1)
如果我错了,请纠正我,但在我看来,你在shell CURL中使用PUT请求,在PHP版本中使用POST请求。这两种HTTP方法虽然含义非常接近,但通常不会通过API端点以相同的方式进行管理。