OAuth::getRequestHeader

(No version information available, might only be in Git)

OAuth::getRequestHeaderGenerate OAuth header string signature

Description

public OAuth::getRequestHeader(string $http_method, string $url, mixed $extra_parameters = ?): string|false

Generate OAuth header string signature based on the final HTTP method, URL and a string/array of parameters

Parameters

http_method

HTTP method for request.

url

URL for request.

extra_parameters

String or array of additional parameters.

Return Values

A string containing the generated request header or false on failure

add a note add a note

User Contributed Notes 1 note

up
8
me at chrishowie dot com
8 years ago
The documentation does not specify the difference between passing a string and passing an array for the third parameter.  We spent two days debugging before reading the C source code to figure out that there is a significant and undocumented difference between the two.

"a=1" and array("a" => 1) are handled very differently!

If you are making a POST/PUT request (or anything with an entity body) then you should pass that as a string.

If you are making a request with a query string, you should pass that as an associative array.

If you pass "a=1" intending that to specify the query string, the generated signature will be invalid -- it will process this as if you were POSTing the content "a=1" instead.
To Top