【问题标题】:PHP basic auth file_get_contents() [duplicate]PHP基本身份验证file_get_contents()[重复]
【发布时间】:2015-08-18 03:37:29
【问题描述】:

我需要解析来自网站的一些 XML 数据。 XML 数据是原始格式,但在我需要进行身份验证之前(基于基本网络服务器的身份验证,带有用户名和密码)。

我试过了:

$homepage = file_get_contents('http://user:password@IP:PORT/folder/file');

但我收到以下错误:

打开流失败:HTTP 请求失败! HTTP/1.0 401 未经授权

PHP 的身份验证似乎有问题。知道如何解决这个问题吗?

【问题讨论】:

    标签: php authentication file-get-contents


    【解决方案1】:

    您需要添加一个流上下文来获取请求中的额外数据。尝试类似以下未经测试的代码。它基于file_get_contents() 的 PHP 文档中的一个示例:

    $auth = base64_encode("username:password");
    $context = stream_context_create([
        "http" => [
            "header" => "Authorization: Basic $auth"
        ]
    ]);
    $homepage = file_get_contents("http://example.com/file", false, $context );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-20
      • 2021-01-28
      • 2017-11-16
      • 2013-04-11
      • 2018-11-10
      • 2017-05-07
      • 2011-01-28
      • 1970-01-01
      相关资源
      最近更新 更多