Reputation: 722
PHP Curl Cannot send HTTP HEADER Authorization Secret.
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_POST => 1,
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_HTTPHEADER, array( 'Authorization: Secret <secret>' )
));
$result = curl_exec($curl);
curl_close($curl);
echo $result;
In <secret>
, I am sending secret. But Showing error is authorization header null
Curl getinfo is
Array
(
[url] => http://x.x.x.x:8090/token/create
[content_type] => application/json
[http_code] => 400
[header_size] => 158
[request_size] => 142
[filetime] => -1
[ssl_verify_result] => 0
[redirect_count] => 0
[total_time] => 1.672836
[namelookup_time] => 4.6E-5
[connect_time] => 1.331548
[pretransfer_time] => 1.331722
[size_upload] => 0
[size_download] => 37
[speed_download] => 22
[speed_upload] => 0
[download_content_length] => -1
[upload_content_length] => -1
[starttransfer_time] => 1.672799
[redirect_time] => 0
[redirect_url] =>
[primary_ip] => x.x.x.x
[certinfo] => Array
(
)
[primary_port] => 8090
[local_ip] => x.x.x.x
[local_port] => xxxx
)
When I am using Postman Or Rest Client. I am sending Authorization Secret. Then Response is coming successfully.
Do you any Suggestion? Why PHP Curl is showing error but Postman or Rest Client is working successfully?
Upvotes: 0
Views: 510
Reputation: 519
Use this:
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => array(
"Authorization: Secret <secret>"
)
));
$result = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
echo $result;
Upvotes: 2