我使用的是查尔斯代理重写从测试目的的API的响应。
如果我设置一个断点,我允许,我想完全重写原始响应。
但是,如果我想通过“重写”工具来自动执行它,我卡住了,似乎你不能修改的状态代码:
你知道,如果我失去了一些东西?
我使用的是查尔斯代理重写从测试目的的API的响应。
如果我设置一个断点,我允许,我想完全重写原始响应。
但是,如果我想通过“重写”工具来自动执行它,我卡住了,似乎你不能修改的状态代码:
你知道,如果我失去了一些东西?
最新情况:查尔斯代理的3.8版本刚刚发布,与改写状态的能力。 从发行说明 :
这个版本的重写UI添加了一个新的“响应状态”规则类型:
使用查尔斯3.8+,你可以重写的状态代码。
在重写工具,选择“类型:响应状态”。 在匹配字段和替换字段,要知道,查尔斯预计传入和重写状态相匹配的格式"\d{3} .*"
。 这意味着你的改写状态必须有除数字状态代码的消息部分。
例如:
匹配值:201 *。
替换值:502错误的网关
从替换值省略消息将导致没有重写状态行的。 你可以看到每个呼叫的总结注释部分查尔斯的重写工具输出消息。
这是不是直接回答你的问题,但在我的评论指出上面我是在同样的情况,我发现使用不同的工具,它为我的作品很好的解决方案。
相反查尔斯,我跑mitmproxy ,特别mitmdump ,这个简短的Python 改写脚本 :
#!/usr/bin/env python
def response(context, flow):
if '/somePath' not in flow.request.path:
return
flow.response.status_code = 404
为了将其连接到代理服务器,我运行mitmdump
是这样的:
mitmdump -s /path/to/rewriting-script.py
和它的伟大工程。
我在OS X和我配置的网络接口的Web代理为127.0.0.1端口8080。
最后编辑:马克Liyanage的回答是最正确的,现在这个问题。
不,你不是,我不认为这是可能改写一个状态代码。
我不能将其添加为注释(新用户),但一个解决方法是:
我一直在使用本地地图,这将是完美的这种尝试,但查尔斯增加了它自己的200个OK状态代码的所有文件返回。
编辑:你也可以使用个体反应断点和修改代码。