我正在尝试制作一个使用摘要作为身份验证的 API,当我使用此命令通过 curl 命令行访问 API 时,它可以工作
curl --digest --user website:website http://localhost/api/test/users
但是当使用此代码使用Guzzle 6 php 库运行 api 客户端时
$handler = new GuzzleHttp\Handler\CurlHandler();
$stack = GuzzleHttp\HandlerStack::create($handler); // Wrap w/ middleware
$client = new GuzzleHttp\Client(['base_uri' => 'http://localhost', 'handler' => $stack]);
try {
$request = new GuzzleHttp\Psr7\Request('GET', $req_uri, [
'auth' => ['website', 'website', 'digest']
]);
$response = $client->send($request, ['timeout' => 2]);
} catch (Exception $e) {
echo $e->getMessage();
die();
}
return $response;
它不工作,它说
401 Unauthorized` 响应:{"status":false,"error":"Unauthorized"}
如何解决这个问题?以及如何以正确的方式实现自定义处理程序 guzzle php?