如何使用Charles更改响应体?

51
我正在使用 Charles (http://www.charlesproxy.com) 调试我的 HTTP 请求,但遇到了一个问题。我收到了一个 JSON 响应,需要编辑它以查看我的应用程序如何运行。
我尝试使用 Rewrite 选项,但无法弄清楚如何更改它。最理想的方法是从磁盘加载整个响应。
有什么想法可以实现这一点吗?谢谢。
4个回答

36

地图本地工具可能是您要寻找的。通过菜单 工具 | 地图本地... 访问。请注意,您可能需要相应的重写规则 (工具 | 重写...) 来确保从磁盘服务的响应的 MIME 类型与应用程序所期望的类型相同。但是,Charles 的最新版本可以自动设置类型。


36

分享如何启用断点,并更改响应。

  1. 首先请求链接,然后启用断点。在HTTP请求上右键单击,选择“断点”。 输入图片描述
    2. 菜单代理 > 断点设置 > 双击请求链接 输入图片描述
    3. 更改方案为GET/POST > 查询* 输入图片描述
    4. 修改请求,切换到“编辑请求”选项卡 > 可以更改URL、标题、cookie等 > 然后点击执行 输入图片描述
    5. 编辑响应:选择“编辑响应”标签页 > 更改响应 > 点击执行 输入图片描述
    享受它吧。你做到了。

2
是否有可能让Charles每次都回复自定义的JSON,直到禁用为止?(与设置断点并每次更新相反) - Nevin Madhukar K
我认为Charges可以做到。只需从json文件中读取响应即可。但是我没有经验。请谷歌一下。 - Zgpeace
为了我的套件,有必要在“编辑断点”处删除“请求”标记,因为在某些情况下,即使没有更改任何内容,它也会返回错误。 - Nikita Shadkov

26

Charles Proxy修改响应

正如所述,Charles Proxy(4.2.8版本)允许您使用不同的方法更改响应主体:

  1. 本地映射工具 ⌘ command + ⌥ option + L - 使用本地文件来提供远程位置
  2. 远程映射工具 ⌘ command + ⌥ option + M - 修改请求位置以将一个远程位置映射到另一个位置
  3. 重写工具 ⌘ command + ⌥option + R - 在Charles通过时修改请求和响应
  4. 断点工具 ⌘ command + ⇧ shift + K - 在发送和接收请求和响应之前拦截和编辑它们

了解更多信息,请点击此处


21

启用断点,然后更改响应。在调整响应之前,您应该按下继续/发送请求以将其发送。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接