Fiddler如何捕捉DefaultHttpClient的HTTP请求
实际开发中为了解决Ajax跨域请求问题,会通过一个同域的控制器在服务端代理请求目标的Web API并将结果返回。为了便于调试这类请求,我们希望通过Fiddler可以监控到这些请求。Fiddler官方给出了Java应用程序如何配置:Configure a Java Application to Use Fiddler。不过我们发现如果我们使用org.apache.http.impl.client.DefaultHttpClient时,官方提供的两种方法都无效(使用java.net.HttpURLConnection不存在该问题)。
最初查了一些资料了解到需要通过代码显示设置DefaultHttpClient使用代理,如下:
HttpHost proxy = new HttpHost("127.0.0.1", 8888); HttpClient httpClient = new DefaultHttpClient(); httpClient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy);
通过加入上面的代码以后Fiddler确实可以捕捉到请求,但这段代码的侵入性太大,没有达到我们的预期。于是就在Apache官网查资料。终于找到一篇非常有用的文章:Chapter 2. Connection management。在HttpClient proxy configuration章节提到了可以通过代码设置使用标准的JRE代理(One can also instruct HttpClient to use the standard JRE proxy selector to obtain proxy information),也就是说可以使用Fiddler官网提到的配置方式。修改代码如下:
DefaultHttpClient httpClient = new DefaultHttpClient(); SystemDefaultRoutePlanner routePlanner = new SystemDefaultRoutePlanner(ProxySelector.getDefault());httpClient.setRoutePlanner(routePlanner);
Fiddler如何捕捉DefaultHttpClient的HTTP请求相关推荐
- 解决Fiddler不能监听Java HttpURLConnection请求的方法
在默认情况下,Fiddler不能监听Java HttpURLConnection请求.究其原因,Java的网络通信协议栈可能浏览器的通信协议栈略有区别,Fiddler监听Http请求的原理是 在应用程 ...
- fiddler无法抓取chrome浏览器请求的解决方案之关闭代理软件
fiddler无法抓取chrome浏览器请求的解决方案之关闭代理软件 参考文章: (1)fiddler无法抓取chrome浏览器请求的解决方案之关闭代理软件 (2)https://www.cnblog ...
- Fiddler 抓取eclipse中的请求
Fiddler 抓取eclipse中的请求 代码中添加 System.setProperty("http.proxySet", "true"); System. ...
- fiddler拦截模拟器中app的请求设置方法
fiddler拦截模拟器中app的请求设置方法 fiddler设置 Tools -> Options -> connections 设置端口号 可以勾选Allow remote compu ...
- 编辑Fiddler的FiddlerScript脚本,代理请求到本地
前言 博主JAVA开发工程师一枚. 最近两年工作基本上都是前后端分离~ 之前做电商项目,版本开发过程中,App开发同事(安卓/IOS)都会打一个测试包给我们,对自己开发的那部分接口进行自测.然而,Ap ...
- Fiddler抓包1-抓firefox上https请求
前言 fiddler是一个很好的抓包工具,默认是抓http请求的,对于pc上的https请求,会提示网页不安全,这时候需要在浏览器上安装证书. 一.网页不安全 1.用fiddler抓包时候,打开百度网 ...
- 亲测_精简版Fiddler抓包手机端GET请求过程.
网上Fiddler的抓包博客教程很多,但是根据楼主搜索亲测发现半数以上博客教程内容不全,故重新整理一种测试方案. 需要使用的软件:1,Fiddler软件(我的共享地址:h[去掉此大括号]ttp://[ ...
- fiddler工具条、状态栏、请求信息栏各按钮的作用
1.fiddler工具条 2.fiddler状态栏 3.请求信息栏 转载于:https://www.cnblogs.com/kakaln/p/8198299.html
- fiddler修改客户端发出去的请求
设置断点的两种方式: 1.通过工具栏设置断点 步骤:Rules --Automatic Breakpoints --选中 Before Requests 设置之后,客户端或者浏览器发起请求,模拟Goo ...
- Fiddler抓包,并修改请求数据
浏览器抓包(工具:fiddler)并 修改请求内容 工具下载:https://pan.baidu.com/s/1pyKdAwgTdNNvoWA2bGlk9A 1.正常打开网页,输入要提交的内容 2.打 ...
最新文章
- gprof 性能优化工具
- 计算机四级考试操作系统单元题,计算机四级考试操作系统单选练习
- Java每天10道面试题,跟我走,offer有!(七)
- Go 语言框架 Gin 练习2
- SpringMVC运行流程分析
- python_异常处理
- foo( a )JAVA面试题_Java相关面试题总结+答案(五)
- python获取服务器文件svn版本信息_如何编程获取SVN版本号?
- c++ 字符串中的字符无效_13python中的字符串
- AIR ANE(本机扩展)使用中的一些问题(Android平台)
- 通过Wireshark获取宽带账号密码
- Selenium无法定位元素的九种解决方案
- 2019ICPC南京区域赛ABCHIJK
- STM32——PWM知识详解
- ignore在mysql中什么意思_ignore是什么意思
- 可用主机ip地址数量的计算
- 仓库软件可以管理仓库,这么简单!
- Python中except用法和作用
- 去除滚动条 去除滚动条样式 css修改滚动条样式
- python棋盘放麦粒_棋盘上的麦粒有什么问题?