问题标签 [guzzle]

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 投票
2 回答
6913 浏览

symfony - guzzle php http 客户端 cookie 设置

我正在尝试从 Zend Http Client 迁移到 Guzzle Http Client。我发现 Guzzle 的功能很好并且在大多数情况下易于使用,但我认为在使用 Cookie 插件时没有很好的文档记录。所以我的问题是如何在 Guzzle 中为要对服务器发出的 HTTP 请求设置 cookie。

使用 Zend Client,您可以做一些简单的事情:

那么,你如何在 Guzzle 中做到这一点。我看过http://guzzlephp.org/guide/plugins.html#cookie-session-plugin。但我觉得这并不简单,我无法理解它。可能有人可以帮忙吗?

0 投票
3 回答
9142 浏览

php - 在 Guzzle 中以编程方式构建查询字符串?

在我的 PHP Guzzle客户端代码中,我有类似的东西

但相反,我想要类似的东西:

在 Guzzle 中可以吗?从文档和随机谷歌搜索来看,似乎是这样,但我找不到确切的方法。

0 投票
1 回答
4059 浏览

curl - 设置证书验证位置时出错(Vagrant、Guzzle、curl)

我有一个 Vagrant box 设置并运行。我正在尝试使用 Guzzle 连接到第 3 方服务的 API。

据我所知,验证证书或来自虚拟机和 API 服务器的 vagrant box 中的东西时遇到了一些问题。

任何建议将不胜感激,谢谢。

这是我回来的错误:

0 投票
1 回答
548 浏览

php - 包括一个封装现有类的 PHAR

我有一个当前使用Guzzle的项目(由引导文件中的显式“require_once”加载 [作为 .phar])。

我一直在尝试从 Amazon 添加AWSSDKforPHP,以便我可以轻松处理上传到 Amazon S3。不幸的是,当我尝试包含该包(也打包为 .phar 文件)时,PHP 会抛出一个令人讨厌的错误:

我已经(完全)关闭了 APC,因为我之前已经看到 APC 引起了一些需要/包含问题。

我怀疑 PHP 会有这样一个尴尬的限制,即只能包含一次具有依赖关系的。...但我可能是错的。

0 投票
4 回答
1799 浏览

php - Symfony2 ReST 客户端结构

我正在尝试在 Symfony 2 中为 ReST 客户端建立一个最佳实践模式,因为这对我们公司来说是一项非常常见的工作,我们在前端有 Symfony 应用程序,通过 HTTP/ReST 与基于 Java 的后端通信。

我的想法是,这些服务在DDD中为特定域填充“存储库”角色。根据 Doctrine 指定的约定,这些将进入返回 Entity 对象的 Repository 类。

我认为同样的约定也可以在这里工作,ReST 客户端使用像 Guzzle 这样的库或直接 Curl 来实现一个 Repository 类,不管如何,然后那里的代码进行从 XML 或 JSON 到实体的基本转换供上游开发人员操作的对象。这与其他 Symfony 2 用例中的模式一致,并且从 DDD 的角度来看是有意义的。

有没有人看到这个问题或更好的方法?

0 投票
0 回答
348 浏览

basic-authentication - 基本身份验证在本地工作,但不在 Travis 上

为了使用我的 API,我需要经过身份验证才能执行一些操作。我正在使用 Behat + Mink 进行测试。

我有两种身份验证方法:通过令牌(发送带有一些参数的 POST 请求,然后获取我可以在其他地方使用的令牌),这在本地环境和 Travis 环境中运行良好,或者我可以使用基本身份验证。

在我的本地环境中,Basic Auth 工作得非常好,而且我不记得配置过什么特别的东西......但是当我在 Travis 上执行测试时,它似乎没有考虑到它。

正如我所说,我正在使用 Behat + Mink(+ Goutte,所以我也在使用 Guzzle),并且在将请求发送到 Curl 之后,似乎包含 Authorization ( Authorization: Basic (base64_txt)) 的标头只是......消失了。即使我在本地环境中。但是,它仍然保留了我的登录信息。但不是在 Travis 环境中,它与我的本地环境应该没有什么不同......

这是要点链接。

我不知道是否有足够的信息,但如果您需要更多信息,请随时告诉我,我会尽可能提供。

谢谢。

0 投票
3 回答
4110 浏览

php - 如何在 PHP 中处理 application/octet-stream(未压缩的 gzip 文件)?

我必须解析很多(10000+)远程压缩文件。每个压缩文件都应该在其中包含一个 CSV(可能在一个文件夹中)。现在我可以获取正文,检查内容类型并解压缩,获得application/octet-stream.

问题是:什么是八位字节流,如何检查其中的文件或文件夹?

0 投票
5 回答
10599 浏览

php - 通过 guzzle 中的查询字符串发送数组

Guzzle客户端默认从此代码创建

这个网址

在 RESTful 应用程序中以查询字符串发送数组的最佳实践是什么?问题是,如何在服务器端确定c,d是字符串还是数组?使用方括号发送数组不是更好吗,例如a[]=c&a[]=d?如何将 Guzzle 设置为使用方括号?还是使用 JSON 编码的变量更好?在服务器端,我使用Tonic

0 投票
1 回答
1113 浏览

php - 如何在 php 中跨数据中心发出异步 http 请求

我们正在开发基于 Kafka 的事件收集管道,该管道将通过 HTTP GET / POST 请求接受传入事件。它应该能够通过用户浏览器以及在 Nginx + PHP-FPM 上运行的 Web 服务器接收事件。根据需求的本质,该管道必须具有弹性,因此我们将在新加坡 AWS 进行部署,而我们的客户端服务 Web 服务器位于印度孟买的物理数据中心。我们不想因此而引入任何延迟,因此 PHP 应用程序应该只触发一个请求并忘记它,开始时即使约 5% 的请求丢失也是可以的。孟买和新加坡之间的往返时间约为 70 毫秒。我们可以使用哪些选项:-

  • 超时时间约为 100 毫秒的 curl 或 fsockopen 请求——不可接受
  • 使用Guzzlecurl-easy之类的库——它们在内部仅使用 curl,因此会再次引入延迟
  • 将请求本地写入文件并使用像 Flume 或 Kafka 这样的总线进行传输——本质上我们将复制均匀的收集管道,增加硬件成本。
  • 使用像 gearman 这样的工作队列——不是这方面的专家,所以不知道利弊。
  • 阳光下的任何东西,都提供免费且低维护的服务。

请建议。

0 投票
0 回答
4099 浏览

php - Goutte 禁用 Guzzle 缓存

我遇到了 Goutte 的问题,或者实际上是 Goutte 的 Guzzle 部分。

Guzzle 确实会自动缓存每个 GET 调用,我试图禁用它,但我无法真正让它工作。

正如您在此处看到的,我将缓存参数直接解析到 Guzzle 构造函数中。

但是,这不会进行任何更改。从缓存插件的文档开始(参见:http ://guzzlephp.org/guide/http/caching.html )

这段代码:

应该输出cache.override_ttl的当前值,这不会输出任何东西。

我相信这一定是关于 Goutte 包装的东西,我忽略了。有人有想法么?