OkHttp3拦截器动态替换/改变host,schema等参数

背景

工作中遇到需要动态替换host,使用线下环境的host来进行测试回归,如将produce.example.com动态替换为使用test.example.com

解决方案

1.新创建HttpUrl对象newHttpUrl,使用host(),scheme()等方法设置新的host,schema等参数。

2.新创建Request对象newRequest,使用url()方法将新创建的newHttpUrl设置为newRequest的url。

3.通过反射修改Call中的originalRequest为newRequest对象实现动态替换/改变host,schema等参数。

4.在MyEventListener的callStart(Call call)方法中判断host为produce.example.com时调用NetUtil.replaceOriginalRequest(call, request)

代码

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容