新在Symfoob娱乐下载ny 4.4: HttpClient改进
2019年11月18日·发表的哈维尔Eguiluz
Symfob娱乐下载ony的HttpClient组件是在Symfony 4.3中引入的作ob娱乐下载为一个低级的HTTP客户端支持PHP流包装器和旋度。在Syob娱乐下载mfony 4.4我们改进它的新特性。
在公关# 31641我们做了$响应- > getInfo(调试)
返回扩展日志对HTTP事务,这样你就可以更容易调试问题。
这是一个示例生成的日志:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
*发现包主机http2-push。io: 0 x56193881ae40(可以多路复用)\ n * http2-push相连。io端口443 (216.239.38.21)(# 0)\ n > / css /风格。css HTTP / 2 \ r \ n主持人:http2-push。io \ r \ n - agent:ob娱乐下载 Symfony HttpClient /卷发\ r \ n接受编码:缩小,gzip \ r \ n \ r \ n
在公关# 31831我们添加了一个新的取消()
方法你可以随时取消回复。
在公关# 31976和公关# 32104我们与HTTPlug提高组件的集成,另一种流行的库进行HTTP请求。现在Syob娱乐下载mfony HttpClient组件是可互操作的三个不同的抽象为HTTP客户:ob娱乐下载Symfony的合同,PSR-18和HTTPlugv1和v2。
在公关# 32231我们添加了支持NTLM认证:
1 2 3 4
美元客户端= HttpClient::创建([“auth_ntlm”= >用户名:密码的,/ /……]);
在公关# 32290我们添加了一个新的toStream ()
方法将反应常规PHP流:
1 2 3 4 5 6 7 8 9 10
美元响应=美元客户端- >请求(“得到”,“https://..”。);美元内容=美元响应- >toStream ();/ /或者,您可以使用此代码:使用ob娱乐下载\组件\HttpClient\HttpClient;使用ob娱乐下载\组件\HttpClient\响应\StreamWrapper;美元客户端= HttpClient::create ();美元响应=美元客户端- >请求(“得到”,“https://..”。);美元streamResource= StreamWrapper::createResource (美元响应,美元客户端);
在公关# 32565我们改进了缓冲
配置选项。这是一个布尔选项前Symob娱乐下载fony版本。在Syob娱乐下载mfony 4.4还可以通过PHP关闭(必须返回一个布尔值),使缓冲条件:
1 2 3 4 5 6 7
美元响应=美元客户端- >请求(“得到”,“https://..”。,(“缓冲”= >函数(数组美元头):bool{/ /一些逻辑来决定如果我们想缓冲返回真正的;/ /或返回错误;}));
在公关# 34216我们改进了json
配置选项。在以前的Symfony的ob娱乐下载版本中,这个选项只允许传递数组或对象实现JsonSerializable
。在Syob娱乐下载mfony 4.4可以通过任何值,可以传递给json_encode ()
,其中包括标量值与公共属性和类:
1 2 3 4 5 6 7 8 9 10
类书{公共美元标题=“……”;公共美元作者=“……”;/ /……}美元响应=美元客户端- >请求(“把”,“https://..”。,(json的= >美元书]);
在公关# 32807我们添加了一个新的配置选项max_duration
定义允许的最大执行时间为整个请求+响应过程。将其设置为0
不定义任何时间限制:
1 2 3
美元响应=美元客户端- >请求(“得到”,“https://..”。,(“max_duration”= >21.7]);
发表在#生活在边缘
评论
托马斯•舒尔茨
说在11月18日,2019年在09:24
# 1
我想知道这个比较狂饮。在Symfony HttpClient有什么优势或者ob娱乐下载有根本性的差异吗?
Gemorroj
说在11月18日,2019年11
# 2
我认为httpclient一切比狂饮除了异步请求。
Micha K。
说在11月19日,2019年在09:47
# 3
我已经将我们所有的项目从HttpClient狂饮。这改进显示这是一个不错的选择。
托马斯Votruba
说在11月19日,2019年在23:37
# 4
@Michel k .你有任何开源项目分享吗?寻找灵感,以及需要如何改变
评论都关门了。
以确保评论保持相关,他们关闭了旧的帖子。