我一直在寻找一种方法来改变一个XHR请求在我的浏览器,然后重新播放它。
假设我在浏览器中完成了一个完整的POST请求,我唯一想要更改的是一个小值,然后再播放一次。 如果直接在浏览器中完成,这将更容易、更快。
我在谷歌上搜索了一下,还没有找到在Chrome或Firefox中做到这一点的方法。
在这两种浏览器中是否有办法做到这一点?
我一直在寻找一种方法来改变一个XHR请求在我的浏览器,然后重新播放它。
假设我在浏览器中完成了一个完整的POST请求,我唯一想要更改的是一个小值,然后再播放一次。 如果直接在浏览器中完成,这将更容易、更快。
我在谷歌上搜索了一下,还没有找到在Chrome或Firefox中做到这一点的方法。
在这两种浏览器中是否有办法做到这一点?
当前回答
5年过去了,这个基本的要求并没有被Chrome开发人员忽视。 虽然它们不像Firefox那样提供编辑数据的方法,但它们提供了完整的XHR回放。 这允许调试ajax调用。 “Replay XHR”会重复整个传输过程。
其他回答
铬:
在devtools的Network面板中,右键单击,选择“Copy as cURL” 粘贴/编辑请求,然后从终端发送它,假设您有curl命令
参见捕获:
或者,如果你需要在网页的上下文中发送请求,选择“Copy as fetch”并从javascript控制台面板编辑-发送内容。
Firefox:
Firefox允许直接从Network面板编辑和重新发送XHR。下图来自Firefox 36:
我的两点建议:
Chrome的邮递员插件+邮递员拦截插件。更多信息:邮差捕捉请求文档 如果你用的是Windows,那么Telerik的Fiddler是一个选择。它有一个编码器选项来重放http请求,而且是免费的。
可怕的请求
拦截和修改HTTP请求
https://chrome.google.com/webstore/detail/requestly-modify-headers/mdnleldcmiljblolnjhpnblkcekpdkpa https://requestly.io/
5年过去了,这个基本的要求并没有被Chrome开发人员忽视。 虽然它们不像Firefox那样提供编辑数据的方法,但它们提供了完整的XHR回放。 这允许调试ajax调用。 “Replay XHR”会重复整个传输过程。
不需要安装第三方扩展!
存在javascript片段,你可以添加为浏览器书签,然后在任何网站上激活来跟踪和修改请求。它看起来是这样的:
如需进一步说明,请查看github页面。