charles修改数据包超时的解决方法

        一般我们可以使用断点功能,然后edit request或response来篡改数据包内容,但这会有个问题,即如果客户端一方长时间得不到响应(手工修改响应数据包时,造成客户端超时未收到服务器回答),有些网站就会重新发送新的数据连接。为避免这一情况发生,可以使用rewrite功能。

    Charles的Rewrite功能非常强大,可以重写接口所有元素的内容,如:header、host、url、path、query param、response status、body。

        下面以对请求的响应内容做修改为例简要介绍,它一般是对某一个或几个值进行rewrite,用新的值来替代返回的值。

        首先,菜单选择【Tools】→【Rewrite】,在打开的对话框中勾选【Enable Rewrite】复选框,在左侧栏点击【Add】,如


        点击该设置对话框右上方的编辑框的【Add】按钮,添加将要篡改的URL,同样点击右下方的【Add】按钮,选择篡改HTTP的那个部分、输入匹配的值和替换的值。如


    示例中,对接口返回的json格式内容的一个key-value对进行了替换。对于value为空的字段,我们要写作null,如"telephoneVerified":null。

      这样当接口数据返回时,如果命中匹配字符,则进行替换。

你可能感兴趣的:(charles修改数据包超时的解决方法)