【发布时间】:2024-01-01 22:14:01
【问题描述】:
假设我正在发出下面的 http 请求,以更新 mongoDB 数据库中的一些记录:
PUT
http://dev.mycompany.co/ping
{"id":4432, "name":"Jane Doe", "products":[ {"id":287}, {"id":434} ] }
请注意,上面 JSON 的“products”属性中有一个由两个对象组成的数组。我有通过 Fiddler 和我编写的 ruby 脚本以这种通用格式发送的数据。
当通过 Fiddler 发送时,我在 JSON 中的数据被正确解析并更新到我的数据库中。当通过我的 ruby 脚本发送时,JSON 中的数据没有被正确解析。我一直在试图弄清楚为什么会这样。现在,我想知道当 JSON 与 http 请求一起发送时,数据实际上是如何发送的。有人能指出我正确的方向吗?
【问题讨论】:
-
一个猜测:您的 Ruby 脚本可能正在发送一组不同的标头(可能是身份验证、授权或
Content-Type) -
它在 http 请求的正文中作为 json 文本发送。你遇到了什么错误?将 Fiddler 放在您的 ruby 脚本和服务器之间,以便您可以拦截 ruby 脚本正在执行的请求。
-
@AaronBrager 有没有办法找出我的 Ruby 脚本发送的标头?
-
@NazaretK。我正在从终端启动 ruby 脚本。 Fiddler 仅捕获通过浏览器发送或发送到浏览器的流量
-
好的,我已经有一段时间没有使用 Fiddler,所以我不记得了。试试这个:ws.apache.org/tcpmon/tcpmontutorial.html 这可能是有史以来最简单的 tcp 监控工具 :)
标签: json http httprequest