我正在尝试将
数据发送到远程AWS API。
数据应该是正文
部分上的JSON
。
使用邮递员,我可以发送数据,一切都正常工作:
现在,为了使用GuzzleHTTP\psr7\request
,我正在执行以下操作:
$request = new \GuzzleHttp\Psr7\Request(
'POST',
'AWS API URL',
['Host' => 'AWS HOST', 'body' => '{"json": "my JSON"}']
);
$request = $signer->signRequest($request, $credentials);
$response = $client->send($request);
请求成功,但没有数据更新!好像没有收到'body'
一样。
我无法访问远程API日志文件。
所以我的问题是,这是在Guzzle请求的主体部分发布数据的正确方法吗?
谢了。
根据链接的答案,您需要在请求的同时传递以下选项:
[GuzzleHttp\RequestOptions::JSON => ['key1' => 'value1', 'key2' => 'val2']]
或:
['json' => ['key1' => 'value1', 'key2' => 'val2']]
但是,由于需要首先构建请求对象,因此应该能够将此选项作为client::send
的第二个参数传递:
$response = $client->send($request, [
GuzzleHttp\RequestOptions::JSON => ['key1' => 'value1', 'key2' => 'val2']
];
我正试图使用Guzzle6 http客户端发送一个post请求。我发送了两个请求,一个内容类型为(Guzzle),另一个为(Guzzle)。 我将客户机初始化如下(分别为和): 我收到的响应没有相同的数据/正文: :的输出 但是为什么我首先问这个问题是因为我面临签名不匹配的问题。 当我发送请求时,我添加了一个带有签名的头,签名是。因此,当以和的形式发送数据时,我得到了不同的签名(因为在的情况下,接
我正在尝试在Spring Boot中使用WebClient制作API POST Request。但是我无法使用JSON正文发出我想要的请求并以JSONObject的形式接收响应。 JSON正文: 服务类别- 工作区模型- 主通话- 我需要发送一个JSON主体列表,作为主体post请求。请帮我做帖子请求提前谢谢
问题内容: 因此,根据jQuery Ajax文档 ,它在发送请求时以查询字符串的形式序列化数据,但是设置应允许我在正文中发送实际的JSON。不幸的是,我很难首先确定是否发生这种情况,其次是将对象的外观发送给服务器。我所知道的是服务器未解析我正在发送的内容。 使用http客户端发布对象文字时,它可以工作。但是当将jQuery与结合使用时,它将失败。不幸的是,当我在Safari中分析请求时,它说消息的
我尝试使用(version4.0)调用api来提交一些数据。我想请求已经成功了。但我遇到的麻烦是,当进行调用时,我从服务器得到一个0字节失败的响应。 我已经尝试了StackOverflow上当前的许多解决方案,但找不到解决方案。谢谢你的帮助。 以下是我的设置:
以下是我的情况: < li >客户端向Netty服务器发送POST请求。 < li>Netty处理POST请求,如果服务器确定需要发送响应,它会将响应发送回客户端。否则,服务器必须向另一个endpoint发送POST请求,获取响应并将该响应发送回客户端。 到目前为止,我已经处理了传入的POST请求。要发送传出的POST请求,这是我在Handler中所做的。 这显然是错误的,因为我正在处理程序中启动
问题内容: 有人知道使用JSON 的正确方法吗? 我从服务器收到响应。它可以使用Chrome浏览器。 问题答案: 对于 Guzzle <= 4: 这是原始的发布请求,因此将JSON放入正文即可解决问题