Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php RESTAPI的新特性_Php_Rest_Authorization - Fatal编程技术网

Php RESTAPI的新特性

Php RESTAPI的新特性,php,rest,authorization,Php,Rest,Authorization,基本上,我被指派使用第三方RESTAPI在PHP中构建REST请求应用程序。执行POST、GET等看起来很简单,但是它们有一个使用摘要令牌的授权头。如何通过get传递此信息 例如: 返回:未找到摘要身份验证标头 在Firefox海报中,我只需添加标题“Authorization”和值“Digest 0:codehere”,它就可以工作了 见 第三个参数$context允许您添加通过创建的上下文。看见在那里,您可以找到一个选项header,该选项允许您设置发送的请求要使用的头,在您的情况下,授权-

基本上,我被指派使用第三方RESTAPI在PHP中构建REST请求应用程序。执行POST、GET等看起来很简单,但是它们有一个使用摘要令牌的授权头。如何通过get传递此信息

例如:

返回:未找到摘要身份验证标头

在Firefox海报中,我只需添加标题“Authorization”和值“Digest 0:codehere”,它就可以工作了


第三个参数
$context
允许您添加通过创建的上下文。看见在那里,您可以找到一个选项
header
,该选项允许您设置发送的请求要使用的头,在您的情况下,
授权
-header

您可以使用curl进行Rest调用。有关您的帮助,请访问以下帮助链接:

在某些情况下,$\u服务器变量对本地服务器不可用。所以请把 HTACCESS中的以下代码。HTTP授权模块将在PHP中工作。原因是我们必须将其作为单独的模块安装

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
</IfModule>

重新启动发动机
重写规则。*-[E=HTTP\U授权:%{HTTP:AUTHORIZATION},L]

谢谢,可能正在使用curl,因此这会有所帮助
string file_get_contents ( string $filename [, bool $use_include_path = false [, resource $context [, int $offset = -1 [, int $maxlen ]]]] )
<?php
$url ="http://example.com/target.php";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_USERPWD,'username:password');
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
$result = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
?>
$USERNAME = $_SERVER['PHP_AUTH_USER'];
$PASSWORD = $_SERVER['PHP_AUTH_PW'];
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
</IfModule>