问题标签 [guzzle6]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - Laravel:GuzzleHttp 客户端
我正在使用"guzzlehttp/guzzle": "~6.0"
并尝试使用下面的代码来 github 用户。
但是我遇到了错误
Argument 3 passed to GuzzleHttp\Client::request() must be of the type array, string given
但是这种方法适用于"guzzle/guzzle": "^3.9",
我不知道我在哪里遗漏了一些东西。
php - 使用 guzzle 发送异步请求而不等待响应
我有以下两个功能
现在我需要在日志中看到的是:
但我所看到的
我也尝试使用以下方法:
方式#1
方式#2
但结果永远不是我们想要的。任何想法?我正在使用 Guzzle 6.x。
php - Guzzle 无法在一台服务器上运行,但在另一台 PHP FB SDK 上运行
我在开发盒上有我的代码仓库,当我将它移到产品盒时,它无法完成 FB 调用。我的错误是:
Client.php 第 126 行中的 ErrorException:传递给 GuzzleHttp\Client::request() 的参数 3 必须是数组类型,给定字符串,在 /var/www/mypopshare.com/vendor/guzzlehttp/guzzle/src/Client 中调用.php 在第 87 行并定义
我本节的代码是:
return substr($method, -5) === 'Async'
? $this->requestAsync(substr($method, 0, -5), $uri, $opts)
: $this->request($method, $uri, $opts);
两台服务器上的库都是通过 composer 安装的:`
`
这在两种环境中都是一样的,并且已经完成了 composer install 以确保它们在那里。
调用是通过 sammk/laravel-facebook-sdk 包从 Facebook PHP SDK 发出的。我唯一的猜测是服务器上的其他一些配置差异,但不确定在哪里检查。我没有配置产品服务器。任何建议表示赞赏。
php - Guzzle HTTP - 将授权标头直接添加到请求中
谁能解释如何在 Guzzle 中添加授权标头?我可以看到下面的代码可用于添加用户名和密码,但在我的实例中,我只想添加 Authorization 标头本身
我想添加到我的 GET 请求的基本授权标头:-
php - Guzzle 6 不适用于 TLS1.2
先介绍一点背景知识:出于某种原因,curl
只有在我使用 --tlsv1.2 选项的情况下,在我的 Vagrant 机器中进行调用才有效,否则我会得到:
所以我将该值放入配置文件中~/.curlrc
,所以每次我
curl https://myapi.com
在命令行上运行时都会自动使用该选项,并且它工作正常。
但是,我目前正在使用 Guzzle 6,它使用 curl 在后台进行 API 调用。我假设使用的 curlGuzzle
将使用相同的配置文件~/.curlrc
,但似乎不是因为我再次得到:cURL error 35: SSL connect
错误。
这是我正在使用的代码:
如您所见,我什至尝试将 TLSV1.2 值(根据 curl php 文档将值 6 映射到 TLSV1.2)传递给 curl,但仍然没有。任何人都知道这里可能有什么问题吗?
编辑:是的,刚刚确认 Guzzle 使用了其他一些 curl 二进制文件。我将原始的移动到另一个位置,并且无法再从命令行访问它,但在那之后 Guzzle 仍然返回相同的错误。
php - Guzzle 异步承诺的意义何在?
使用 Guzzle,promise 是否提供任何真正的效用?看来你必须调用wait()。以下代码(来自文档)本身似乎什么都不做:
如果您必须调用 $promise->wait() 来发出请求,那么承诺的意义何在?这与以下内容有何不同:
尽我所能,唯一的好处是它是定义请求成功和失败回调的便捷方法。甚至关于发出多个请求的文档部分也有下面的代码,它似乎阻止并执行所有请求......也许在“同时”。这就是我应该期待的吗?
php - 使用 Guzzle 6 创建异步 json 请求池以发送到 API 端点的正确方法是什么?
我的目标是使用Guzzle 6创建一个 PUT json 数据的异步请求池。然后监控每个 $promise 成功/失败。
为了与我的 POOL 代码示例进行比较,以下对 $client->request() 的单个请求将第三个参数转换为编码的 json,然后添加 Content-type:application/json。**
在接收 API 端点上,我可以通过执行以下操作从上面的单个请求中读取 json:
使用文档中的并发请求示例,为了使用 new Request() 创建异步请求池,我希望可以使用相同的参数(方法、url 端点、json 标志),就像在单个 $client->request( ) 上面的例子。但是,yield new Request()
不处理 3rd json 参数,如$client->request()
. 从我的池代码调用正确设置 json 和内容类型的正确 Guzzle 函数是什么?或者有没有更好的方法来创建大量异步请求并监控它们的结果?
池代码示例:
php - 使用 PHP Guzzle HTTP 6 发送带有已编码数据的 JSON
我正在尝试发送一个 POST 请求,其中包含带有以下标头的原始 JSON 字符串:Content-Type: application/json
.
通过查看文档,我可以看到我可以做这样的事情......
我的问题是,当我到达这一点时,$data
已经json_encode
'd。
我尝试了以下方法,但它不起作用。
我的问题是:我可以将该json
选项与已编码的数组一起使用吗?或者有没有办法让我简单地设置Content-Type
标题?
symfony - Guzzle 获取文件并转发
我有一个获取文件并将其返回给用户的网络服务(基于 Symfony)。自从我使用 curl 来做到这一点。
我刚刚找到 guzzlehttp,它看起来很棒。但是,我不知道如何在不将下载的文件(xml 或 txt)保存到本地文件的情况下使用 guzzle 执行此操作,从文件系统中读取它并将其返回给用户。我想这样做而不保存到文件系统。
php - 在 config.yml 变量中使用斜线
我正在尝试在捆绑包( https://github.com/8p/GuzzleBundle )中设置一个变量config.yml
,8p Guzzle
如下所示:
并做一个典型的得到:
但我收到一条错误消息,告诉我请求的 url 是:
我认为是与slash
,我试图用反斜杠转义但没有。