我想查看在Chrome中发送的HTTP POST数据。

数据现在在内存中,我可以重新提交表单。

我知道如果我重新提交,服务器会抛出一个错误。有没有办法,我可以查看数据,是在Chrome的内存?


当前回答

它有一个棘手的情况:如果你提交了一个post表单,那么Chrome会打开一个新选项卡来发送请求。直到现在,它都是正确的,但是如果它触发了一个下载文件的事件,这个选项卡将立即关闭,这样你就不能在Dev Tool中捕获这个请求。

解决方案: 在提交post form之前,你需要切断你的网络,这使得请求不能成功发送,这样标签就不会被关闭。然后你可以在Chrome Devtool中捕获请求消息(如有必要刷新新选项卡)

其他回答

另一个可能有用的选项是专用的HTTP调试工具。有一些可用的,我建议HTTP Toolkit:我一直在做的一个开源项目(是的,我可能有偏见),可以为我自己解决同样的问题。

主要的区别在于可用性和功能。Chrome开发工具非常适合做简单的事情,我建议从那里开始,但如果你很难理解那里的信息,你需要更多的解释或更强大的功能,那么合适的工具会很有用!

在这种情况下,它会向你展示你正在寻找的完整POST正文,有一个友好的编辑器和高亮显示(全部由VS Code提供),所以你可以深入研究。当然,它会给你提供请求和响应头,但还有额外的信息,比如来自MDN (Mozilla开发者网络)的文档,用于你可以看到的每个标准头和状态代码。

一张图片抵得上一千张。

它有一个棘手的情况:如果你提交了一个post表单,那么Chrome会打开一个新选项卡来发送请求。直到现在,它都是正确的,但是如果它触发了一个下载文件的事件,这个选项卡将立即关闭,这样你就不能在Dev Tool中捕获这个请求。

解决方案: 在提交post form之前,你需要切断你的网络,这使得请求不能成功发送,这样标签就不会被关闭。然后你可以在Chrome Devtool中捕获请求消息(如有必要刷新新选项卡)

在Chrome 96 DevTools网络标签;

点击请求后,有一个“Payload”选项卡显示表单数据:

您可以查看url编码/解码的数据:

您可以将数据视为source / parsed:

即使方法是GET,你也可以看到负载作为查询字符串参数:

其他人给出了非常好的答案,但我想用一个额外的开发工具来完成他们的工作。它叫做Live HTTP Headers,你可以把它安装到你的Firefox中,在Chrome中我们也有这样的插件。

用它工作很容易。

使用你的火狐浏览器,导航到你想要得到你的帖子请求的网站。 在您的Firefox菜单工具->Live Http头 弹出一个新窗口,所有http方法的详细信息都会保存在这个窗口中。在这一步中您不需要做任何事情。 在网站上,做一个活动(登录,提交表单等) 看看你的插电窗。这一切都被记录下来了。

记住你需要勾选“捕获”。

网络标签是所有你需要…