【问题标题】:Digest authentication with Guzzle使用 Guzzle 进行摘要身份验证
【发布时间】:2019-10-18 11:08:41
【问题描述】:

尝试从使用摘要式身份验证的 API 获取 JSON 响应。我正在为客户使用 Guzzle。

这是我到目前为止所拥有的,但似乎不起作用。有什么建议吗?

<?php
require 'vendor/autoload.php';

use GuzzleHttp\Client;

$client = new Client([
'base_uri' => 'https://10.1.1.1',
'timeout'  => 2.0,
]);

$client->setDefaultOption('verify', false);
$client->request('POST', '/json', ['auth' => ['username', 'password', 'digest']]);

【问题讨论】:

  • 您使用的是哪个版本的 guzzle?
  • 我使用的是版本 6
  • 你有测试通过请求方法中的'verify'选项吗?如"$client->request('POST', '/json', ['verify' => false, 'auth' => ['用户名', '密码', '摘要']]);"

标签: php json authentication guzzle digest


【解决方案1】:
<?php

require 'vendor/autoload.php';
use GuzzleHttp\Client;

$client = new Client();

$query = '{"id":1}'; //json payload if any

$result = $client->request(
        'POST',
        'https://10.1.1.1/json', [
            'verify' => false,
            'auth' => ['username', 'password', 'digest'],
            'json' => json_decode($query, true),
        ]);

【讨论】:

    【解决方案2】:

    检查是否安装了 php-curl 扩展。如果不安装它。对于 Linux:

    sudo apt-get install php-curl

    【讨论】:

    猜你喜欢
    • 2016-09-04
    • 2011-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-09
    • 1970-01-01
    相关资源
    最近更新 更多