问题标签 [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.

0 投票
1 回答
840 浏览

php - 使用 Guzzle 6 并发调用并跟踪额外参数

所以我使用 Guzzle 6 进行不确定的并发 api 调用,但我想做的一件事是跟踪 promise 当前正在处理的数组值,因为我最初是根据数据库查询结果处理 api 调用。之后,我想用我从 api 得到的任何东西将值更新回数据库。

对此的任何帮助将是惊人的。我想就如何最好地处理这种情况获得建议。我宁愿以一种聪明、合乎逻辑的方式来做这件事。

谢谢您的帮助

0 投票
1 回答
1199 浏览

xml - 无法回显 guzzle xml 响应 GuzzleHttp\Psr7\Response::xml()

使用 laravel 5.2 我尝试了以下代码:

我得到以下回复:

object(GuzzleHttp\Psr7\Stream)#171 (7) { ["stream":"GuzzleHttp\Psr7\Stream":private]=> 资源(231) 类型 (stream) ["size":"GuzzleHttp\Psr7\ Stream":private]=> NULL ["seekable":"GuzzleHttp\Psr7\Stream":private]=> bool(true) ["可读":"GuzzleHttp\Psr7\Stream":private]=> bool(true) ["可写":"GuzzleHttp\Psr7\Stream":private]=> bool(true) ["uri":"GuzzleHttp\Psr7\Stream":private]=> string(10) "php://temp" [ "customMetadata":"GuzzleHttp\Psr7\Stream":private]=> array(0) { } }

根据提供者的说法,服务器上的请求和响应都可以。

如何使用 xml 响应?换句话说,如何使用 psr7 对象或流,以便显示有意义的信息?

我读到的答案“还”对我没有帮助(要么不知道如何处理所提供的信息,要么该信息不适用于我的情况);

  1. https://stackoverflow.com/a/32512634/3664960 -> 我正在使用 6,但我不知道答案是否建议使用旧版本
  2. https://stackoverflow.com/a/30549372/3664960使用第一个选项放在string前面时,结果是

字符串(1)“”

  1. https://stackoverflow.com/a/372 ​​58804/3664960 -> json_decode

无效的

  1. https://stackoverflow.com/a/31791933/3664960

字符串(1)“”

5. https://stackoverflow.com/a/35632231/3664960

在评论中查看我的评论


我还能尝试什么?


笔记:

我可以阅读标题并正确显示它们!

0 投票
3 回答
2632 浏览

php - 如何使用 Guzzle 6 配置默认查询参数?

从 5 迁移到 6,我遇到了障碍,找不到相关文档。

Guzzle 文档在这里,http ://guzzle.readthedocs.io/en/latest/quickstart.html#creating-a-client ,我们可以添加“任意数量的默认请求选项”的站点。

我想在每个请求中发送“foo=bar”。例如:

这将在http://google.com/this/that.json?a=b上生成 GET

如何修改客户端构造以使其产生:

http://google.com/this/that.json?foo=bar&a=b

谢谢你的帮助!

0 投票
1 回答
1256 浏览

curl - guzzlephp 401 未经授权的问题

我正在尝试一个 guzzle http post 请求

标题在哪里

和帖子字段是

哪个响应正常且符合预期,但如果我通过 guzzlehttp 客户端调用此请求

它以未经授权的 401 响应。我的问题在哪里?谢谢你。

0 投票
1 回答
1295 浏览

php - 如何在 guzzle 6 中压缩(gzip)请求正文

需要将压缩(gzip)正文发送到服务器

例如

0 投票
1 回答
73 浏览

guzzle - 使用 GuzzleHttp 创建 post 请求

我想向没有 API 端点的 web 应用创建发布请求。

我希望能够登录、获取数据和发布数据。我刚刚偶然发现了 GuzzleHttp,但仅 HTTP 就很难。webapp 是一个 laravel 应用程序。我怎样才能做到这一点?或者有没有优雅的方式来做到这一点?

0 投票
1 回答
1404 浏览

php - 120 秒后 Guzzle 6 fopen 错误

我在 php 中有一个脚本,它使用 Guzzle 6 向这样的 API 发出很长的 GET 请求:

我想当请愿达到大约 120 秒时,问题就来了。错误说:

我在 php 5.6 和 php.ini 配置为 max_execution_time = 0 的 vagrant box 中启动此脚本。

事实是,在我的本地机器上,它具有相同的 php.ini 和 php 版本。

0 投票
1 回答
2326 浏览

php - 无法在 Guzzle 6 HTTP 客户端中发布布尔值

我现在真的很沮丧,可以求助于 Guzzle 经验丰富的人。

如果我想要来自 API 服务器的代码消息响应而不是完整的链接响应,我正在连接到一个需要布尔值的 API。

以下是原始 http 客户端 (Postman) 访问的两种返回类型之间差异的示例:

启用布尔代码: 在此处输入图像描述

禁用布尔代码: 在此处输入图像描述

我遇到的问题是,当我使用 Guzzle 6 发出相同的请求时,我将始终获得完整的链接响应,并且永远无法获得要应用的帖子正文中的布尔值。似乎布尔参数被字符串化为“真”(这是我的猜测)。

因此,以下两个 POST 请求产生完全相同的结果:

如果我尝试使用code注释掉的表单参数:

返回的 API 响应始终为: "{"success":{"code":200,"message":"https:\/\/webservices.bvdpetroleum.com\/users\/user-password-reset\/q8VqSAbfTOkW0EMvSTfK5qSS4zr28rSwdQy3D\/uc9wtz3+RI4LH7hDkh\/ZbTfqcC"}}"

如何Boolean在 Guzzle 6form_params数组中发送值?任何见解将不胜感激,因为我不想切换到CURL.

谢谢!

0 投票
1 回答
1139 浏览

laravel - Guzzle 6 异步请求返回传递的参数 1 必须是数组类型,给定字符串,

我正在尝试进行异步 POST 调用,但 guzzle 调用返回以下错误:

" Request.php 第 220 行中的 ErrorException:传递给 Symfony\Component\HttpFoundation\Request::__construct() 的参数 1 必须是数组类型,给定字符串,在 C:\Program Files ...\app\Http\ 中调用Controllers\ConfirmAccountController.php 在第 87 行并定义了

在 ConfirmAccountController 中:

为什么我会收到此错误?

我已经完成了另外两个同步调用,一切都很顺利。

谢谢

0 投票
1 回答
647 浏览

php - GuzzleHttp not found

I have an annoying problem: I want to use GuzzleHttp\Client in my WP extension, but everytime I get an error:

"Fatal error: Class 'GuzzleHttp\Client' not found in /var/www/vhosts/localhost/htdocs/wp-content/plugins/myPlugin/classes/MyPlugin/Plugin.php on line..."

I have already checked out manipulations with Composer and Autoloader, in my composer.json:

also I added into htdocs/index.php:

but this didn't bring any changes. What did I do wrong? Thanks for your answers in advance!