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。

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

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容