问题标签 [symfony-http-client]

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 回答
592 浏览

symfony - 使用 Symfony 4.4 HTTP 客户端发帖不工作,状态码 422

我想将信息发布到外部 api,但我一直收到错误 422。获取信息和授权工作正常。我正在使用 Symfony Http 客户端,授权和标头现在在 framework.yaml 中定义。

Api 文档片段:

curl "https://business.untappd.com/api/v1/locations/3/custom_menus"
-X POST
-H "授权:基本 bmlja0BuZXh0Z2xhc3MuY286OW5kTWZESEJGcWJKeTJXdDlCeC0="
-H "Content-Type: application/json"
-d '{ " custom_menu": { "name": "葡萄酒选择" } }'

我的服务片段:

0 投票
1 回答
170 浏览

php - 无法读取在 Symfony 项目中使用 HttpClientInterface 编码的 gzip

我无法在 Symfony 项目中读取 gzip 编码的响应。这是我的服务:

这是我的回应:

先感谢您

0 投票
0 回答
79 浏览

php-7 - PHP Symfony 命令和代码组织

我正在使用控制台命令 Symfony 进行 http 调用。

快速示例工作:

为了更好地组织我的代码,我想在其他类中外部化 callFoo(和 callBar、callAnother..)方法,该方法将从 CallApiService 继承。喜欢 :

但我不明白如何通过依赖注入来避免重新声明构造函数

0 投票
1 回答
430 浏览

php - 为什么 Symfony HTTP Client 遇到错误时无法访问响应内容,而是抛出异常?

我想使用 Symfony HttpClient 请求从 OAUTH 服务器检索用户信息,但遇到错误响应时我无法直接获取响应,因为客户端抛出异常。

我的用户提供者:

当我调用$response->toArray()or$response->getContent()时,会引发异常,并且在 Postman 上收到以下错误消息

浏览器收到的响应示例:

为什么我不能通过调用直接访问响应$response->toArray()

0 投票
1 回答
675 浏览

php - 如何使用 Http 客户端(可选更改)将 Symfony 请求转发到另一台服务器?

如何拦截请求并将其发送HttpClient到另一台服务器并在修改后从该服务器返回响应?

原始请求将包含数据和文件。我正在寻找最简洁的解决方案,直到将原始原始正文复制为字符串。我坚持的部分是以最短的方式将Request对象插入HttpClient请求(无需编写代码来逐位复制数据和标头),其余的(处理响应)我将管理。

0 投票
1 回答
220 浏览

php - Symfony 等效于 curl_setopt 使用 httpClientInterface 服务

我需要调用外部 API。API 文档说

我正在使用 Symfony 并尝试正确使用给定的服务HttpClientInterface来拨打电话:

当然它返回错误

传递给 Symfony\Component\HttpClient\NativeHttpClient 的选项“文件”不受支持,您是说 cafile 吗?

如何使用 Symfony 提供的 HttpClientInterface 正确设置调用选项?

在 Symfony 文档中的任何地方都找不到答案。

0 投票
0 回答
278 浏览

php - http客户端中的Symfony SSL连接错误

我在我的项目 symfony 中将 http 客户端组件用于外部 api,但是当我测试 api 时发现了这个错误:

url 的 SSL 连接错误

组件的配置是基本配置,如果使用请求方法简单,也可以为请求创建

我为 https 使用证书并启用了 openssl 扩展,我还尝试在选项参数中使用 verify_peer 选项,但也出现错误。

如何修复此错误?

0 投票
0 回答
25 浏览

curl - 在 CurlHttpClient 中设置 CURLOPT_COOKIEFILE

我正在使用 symfony/http-client 5.3.7

我正在尝试向某个 url 发出 POST 请求,但它没有按预期工作。

我发现这是因为 CurlHttpClient 发送 CURLOPT_COOKIEFILE => ''

它的默认值为空,如果我在文件中手动更改它 - 一切正常。

但是无法从收集请求功能中更改它!它在数组 $curloptsToCheck 中提到,正在检查不被更改。也许有人知道我在这种情况下能做什么?

0 投票
1 回答
197 浏览

php - Symfony HttpClient Stream 和 chunk->getContent() 超出正文大小限制


在我的 Symfony 项目中,我创建了一个控制器和一个函数来从站点检索 APi.json 的内容。

我正在使用 HttpClient 来获取内容并将其嵌入到项目中的新文件中。

但是,当我调用此函数时,写入新文件时出错:

Http2StreamException> Http2StreamException> TransportException
超出正文大小限制

这个错误来自这段代码:

我创建了一个 php.ini:
memory_limit = '4G'
upload_max_filesize = '700M'
max_input_time = 300000 post_max_size
= '700M'

原始文件仅重 242MB,并且由于其内容相当大,因此内容不想放入新文件中。
如何绕过此异常并允许对新文件进行 fwrite?

提前致谢

0 投票
0 回答
24 浏览

php - 无法在 localhost:8000 上向我的 symfony 应用程序内部发出请求

我有通过 docker 运行的 Symfony 应用程序。

它在 http://localhost:8000/ 上提供服务。我正在尝试测试我的 API 路由,例如检查它们在提供 JWT 时是否可用,检查状态代码等等。

这是我拥有的示例代码:

无论如何我得到这个错误:

Symfony\Component\HttpClient\Exception\TransportException: Couldn't connect to server for "http://localhost:8000/api/test-json".

正如这里提到的,Guzzle 无法向 localhost(端口:80、8000、8080 等)发出 GET 请求,因此无法向 localhost 发出请求。

但是当我在 docker 容器中有应用程序时,我该如何解决呢?Symfony 生态系统中是否有针对这种情况的标准解决方案?