如何使用授权headerPHP

How to use authorization header PHP

我正在尝试使用授权 header 以便使用 vimeo API。

它告诉我这样做 'Authorization: basic ' + base64(client_id + ':' + client_secret) ,这是我能做到的。

但是 Internet 上没有任何地方告诉我我实际上用这段代码做了什么?它不是 PHP,但它是否在 PHP 文件中?如果是这样,那么存储后我可以使用什么功能?它会进入 htaccess 文件吗?

关于此的所有在线文档都非常糟糕,这真是令人难过。

总而言之,基本上我要说的是给我看代码

$api_url = 'http://myapiurl';

$client_id = 'myclientid';
$client_secret = 'myclientsecret';

$context = stream_context_create(array(
    'http' => array(
        'header' => "Authorization: Basic " . base64_encode("$client_id:$client_secret"),
    ),
));

$result = file_get_contents($api_url, false, $context);

文档链接:

对于更复杂的请求,您可以使用 cURL, but the library's PHP implementation is a mess and I prefer to avoid it when I can. Guzzle 是一个库,在这里抽象了很多复杂性。

Vimeo 强烈建议您不要自己编写这些身份验证系统,而是使用官方库:https://github.com/vimeo/vimeo.php.

如果您正在寻找自定义 PHP 集成,它会因您发出 HTTP 请求的方式而异。 guzzle和curl都是http请求库,有自己的header设置方式(http://guzzle.readthedocs.org/en/latest/request-options.html#headers and PHP cURL custom headers)

关于 base64 编码你的令牌,使用方法 base64_encode (http://php.net/manual/en/function.base64-encode.php)

$curl = base64_encode("1100032342:F!rSTU99HD"); 回声 $curl;

结果:
MTEwMDAzMjM0MjpGIXJTVFU5OUhE