php – 在guzzle 6中初始化后设置请求选项

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – 在guzzle 6中初始化后设置请求选项脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
在Guzzle版本< 6我曾经在客户端初始化后动态设置我的身份验证标头.我为此使用了setDefaultOption().
$client = new Client(['base_url' => $url]);
$client->setDefaultOption('auth',[$username,$password]);

但是,此功能似乎在版本6中已弃用.我将如何解决此问题?

注意:我需要这样做的原因是因为我正在使用guzzle进行批处理请求,其中一些请求需要不同的身份验证参数.

Guzzle 6的最佳选择是重新创建客户端. Guzzle的HTTP客户端现在是不可变的,因此每当您想要更改某些内容时,您应该创建一个新对象.

这并不意味着您必须重新创建整个对象图,HandlerStack和中间件可以保持不变:

use GuzzleHttp\Client;
use GuzzleHttp\HandlerStack;

$stack = HandlerStack::create();
$stack->push(Middleware::retry(/* ... */));
$stack->push(Middleware::LOG(/* ... */));

$client = new Client([
    'handler' => $stack,'base_url' => $url,]);

// ...

$newClient = new Client([
    'handler' => $stack,'auth' => [$username,$password]
]);

脚本宝典总结

以上是脚本宝典为你收集整理的php – 在guzzle 6中初始化后设置请求选项全部内容,希望文章能够帮你解决php – 在guzzle 6中初始化后设置请求选项所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。