【问题标题】:PHP Curl set apikey issue [duplicate]PHP Curl设置apikey问题[重复]
【发布时间】:2018-06-23 14:09:56
【问题描述】:

我想用 PHP Curl 发出 POST 请求,但找不到相关示例。

这是一个在我的终端中运行良好的 Curl 请求:

curl -X POST -u "apikey:*********" --form "images_file=@filename.jpg" "www.example.com/api"

那么,如何通过 PHP Curl 发出同样的请求呢?

这是我的示例:

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL,'www.example.com/api');
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'Authorization: ' . $apiKey
));
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$server_output = curl_exec ($ch);

curl_close ($ch);

var_dump($server_output);

这不起作用:

curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  'apikey:*******'
));

这也不行:

curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  '*******'
));

结果我有这个:

string(37) "{"code":401, "error": "Unauthorized"}"

【问题讨论】:

标签: php curl post request php-curl


【解决方案1】:

用 CURLOPT_USERPWD 试试这个:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
$output = curl_exec($ch);
$info = curl_getinfo($ch);
curl_close($ch);

【讨论】:

    猜你喜欢
    • 2018-08-14
    • 2019-11-27
    • 1970-01-01
    • 2011-06-21
    • 2011-09-08
    • 2011-09-12
    • 1970-01-01
    • 2011-11-23
    • 2020-03-03
    相关资源
    最近更新 更多