如何在php中使用curl的header

  • 本文关键字:curl header php php curl
  • 更新时间 :
  • 英文 :


hi我如何在php中执行这个curl命令?

curl -X POST "https://api.*****.com/ecc/v1/regions/ir-thr-at1/servers/d13****-9703******/power-on" -H "accept: application/json" -H "Authorization: Apikey a4****82-0***-4***f-a***e-e*********3"

请求URL为

https://napi.arvancloud.com/ecc/v1/regions/ir-thr-at1/servers/d13317d1-9703-4801-b07e-b0dd45a3baa6/power-on

我试试这个代码

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"https://napi.arvancloud.com/ecc/v1/regions/ir-thr-at1/servers/d13317d1-9703-4801-b07e-b0dd45a3baa6/power-on");
curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_POSTFIELDS, 
http_build_query(array('Authorization' => 'Apikey a42727*********')));

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$server_output = curl_exec($ch);
curl_close ($ch);
echo $server_output;

但未经授权返回密钥绝对可以

那些投票的人解决了这个问题!!!

编辑

$headers = array(
'Authentication:Apikey 320f8**************fa',
);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$server_output = curl_exec($ch);

if ($server_output === false)
{
// throw new Exception('Curl error: ' . curl_error($crl));
print_r('Curl error: ' . curl_error($ch));
}
curl_close ($ch);
print_r($server_output);

它还返回未经身份验证

我在邮递员上测试了一下,它还可以,但不是我的代码:邮递员这样做了:

邮递员

分枝杆菌

使用php-ccurl,在尝试此解决方案之前,请确保它已在您的机器上安装并激活:

$request = curl_init("https://napi.arvancloud.com/ecc/v1/regions/ir-thr-at1/servers/d13317d1-9703-4801-b07e-b0dd45a3baa6/power-on
");
curl_setopt($request, CURLOPT_POST, 1); // Set Post Method
curl_setopt($request, CURLOPT_POSTFIELDS, http_build_query($data)); // Set POST Data
curl_setopt($request, CURLOPT_HTTPHEADER, array('Authorization: Apikey a4****82-0***-4***f-a***e-e*********3', 'accept: application/json')); // Request Header
curl_setopt($request, CURLOPT_RETURNTRANSFER, true); // Enable Response Return
$response = curl_exec($request); // Execute Request

最新更新