PHP curl 设置 apikey 问题
PHP Curl set apikey issue
我想用 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"}"
尝试使用 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);
我想用 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"}"
尝试使用 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);