如何使用Charles 修改http code

如何使用Charles 修改http code

使用 Charles 修改 HTTP response code 也非常简单。类似于 mitmproxy,你可以使用 Charles 的内置脚本功能编写修改响应的脚本,并将其运行在 Charles 的上下文中。

以下是一个简单的例子,演示如何使用 Charles 修改 HTTP response code:

安装和启动 Charles

首先,需要下载和安装 Charles。安装完成后,启动 Charles 并确保其正在运行。可以从 Charles 官网(https://www.charlesproxy.com/download/)下载 Charles 安装程序,安装后即可使用。

安装过程中涉及到激活可以用这个工具进行激活。【鼓励大家使用正版】

https://tools.zzzmode.com/mytools/charles/

创建修改响应的脚本

在 Charles 中创建一个新的脚本,在 "Tools" 菜单中选择 "Scripting",然后点击 "Add" 按钮,创建一个新的脚本。

在脚本编辑器中,输入以下代码:

代码语言:javascript
复制
function onResponse (response) {
    if (response.url.indexOf('example.com/path/to/resource') !== -1) {
        response.status = 404;
    }
}

这个脚本定义了一个名为 onResponse 的函数,它接受一个 Charles 的 response 对象作为参数。在函数中,我们检查响应的 URL 是否符合我们的要求,如果是,就将响应的状态码修改为 404。

启用和加载脚本

在 "Tools" 菜单中选择 "Scripting",确保 "Enable Scripting" 复选框已选中,然后点击 "Add" 按钮,将刚才创建的脚本添加到 Charles 中。

在浏览器中测试

现在,你可以在浏览器中访问目标 URL,以触发你的修改响应状态码的脚本。如果一切正常,你将看到修改后的响应状态码。

请注意,如果需要对 HTTPS 流量进行拦截和修改,还需要在 Charles 中设置 SSL 代理,以便将所有 HTTPS 流量路由到 Charles 中。在 Charles 中,选择 "Proxy" 菜单,然后选择 "SSL Proxying Settings",并添加目标域名的证书。