How to include Authorization header in cURL POST HTTP Request in PHP? How to include Authorization header in cURL POST HTTP Request in PHP? curl curl

How to include Authorization header in cURL POST HTTP Request in PHP?


You have most of the codeā€¦

CURLOPT_HTTPHEADER for curl_setopt() takes an array with each header as an element. You have one element with multiple headers.

You also need to add the Authorization header to your $header array.

$header = array();$header[] = 'Content-length: 0';$header[] = 'Content-type: application/json';$header[] = 'Authorization: OAuth SomeHugeOAuthaccess_tokenThatIReceivedAsAString';


@jason-mccreary is totally right. Besides I recommend you this code to get more info in case of malfunction:

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

EDIT 1

To debug you can set CURLOPT_HEADER to true to check HTTP response with firebug::net or similar.

curl_setopt($crl, CURLOPT_HEADER, true);

EDIT 2

About Curl error: SSL certificate problem, verify that the CA cert is OK try adding this headers (just to debug, in a production enviroment you should keep these options in true):

curl_setopt($crl, CURLOPT_SSL_VERIFYHOST, false);curl_setopt($crl, CURLOPT_SSL_VERIFYPEER, false);


use "Content-type: application/x-www-form-urlencoded" instead of "application/json"