有没有办法在 Chrome 或 Firefox 中修改 HTTP 请求?

Posted

技术标签:

【中文标题】有没有办法在 Chrome 或 Firefox 中修改 HTTP 请求?【英文标题】:Is there a way to modify an HTTP request in Chrome or Firefox? 【发布时间】:2014-05-20 20:03:00 【问题描述】:

有没有办法使用 Chrome 开发工具或 Firebug 修改 HTTP 请求?例如在本地开发和在 Chrome 中测试时,我有一个页面需要一个 HTTP 请求来填充一些数据。因为它是本地的,所以该服务不可用。

目前解决此问题的唯一方法是在 Apache 中配置代理通道,以便为该调用提供 QA 环境。我正在寻找或更简单的方法来实现这一点,因为我使用 Jetty 来测试应用程序并且无法配置代理通行证(或我知道的)。

换句话说,有没有办法在本地测试应用程序时为当前会话创建临时代理通道?

【问题讨论】:

您可以尝试Requestly 在 Chrome 中修改 HTTP 请求。它允许您重写 url、阻止网站、修改标题等。 Firefox 自 2018 年起可以使用其内置的开发者工具(按 F12 激活它)来完成。 这能回答你的问题吗? Edit and replay XHR chrome/firefox etc? 【参考方案1】:

这在某些情况下可能会有所帮助 - 使用 fetch 命令发送另一个被篡改的请求。这是在 Chrome 中的操作方法:

    打开 DevTools,标签网络 清除 正常创建您的请求 右键单击该请求并选择复制 > 复制为提取 转到控制台选项卡并粘贴 篡改数据并回车

【讨论】:

【参考方案2】:

Chrome 和 Firefox 中有许多工具/扩展程序允许您修改网络请求。

一个这样的例子是Requestly。使用 Requestly,您可以执行以下任务:

    重定向网络请求。 阻止网站或特定请求。 使用Replace Rule切换域。 修改标题 修改用户代理Documentation1Documentation 2 File Library(托管 JS、CSS、JSON)并在 Requestly 规则中使用它们

除了针对您的特定用例外,还有更多功能。您可以在库上托管您的 js 或 css,并使用重定向规则重定向到它。如果您有 URL 重写要求,那么您可以使用 Redirect 或 Replace 规则。

我不会说 Requestly 与 Fiddler 或 Charles 一样强大,但我会说它与非常简单的 UI 非常接近。

免责声明:我创建了 Requestly!

【讨论】:

是的,但是我如何使用 Requestly 拦截和修改 POST 请求?【参考方案3】:

您可以使用 tweak chrome 扩展程序,您将能够做到这一点,拦截和修改 HTTP 请求。

【讨论】:

这个项目现在是 404 chrome.google.com/webstore/detail/tweak-mock-api-calls/… 这可能是公认的答案。我刚刚成功使用了这个调整扩展,而且非常简单。从安装到第一次拦截请求 5 分钟。

以上是关于有没有办法在 Chrome 或 Firefox 中修改 HTTP 请求?的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法为不同的浏览器设置不同的顶部或底部值?就像 Chrome 的“top:3px”,但 Firefox 的“top:5px”[重复]

在 Firefox 或 Chrome Inspector 中复制显示的 HTML(保持缩进和格式)

有没有办法在过滤掉 iOS Chrome、Firefox 和其他浏览器的同时检测 iOS Safari?

如何手动模拟 websocket 断开连接? (Firefox 或 Chrome 开发工具)

Laravel 推送通知桌面(chrome 或 firefox)

复选框选中的属性在 Chrome 或 Firefox 开发者工具中没有改变