程序员人生 网站导航

Fiddler中script小试牛刀

栏目:互联网时间:2014-09-30 07:40:22

在上篇文章从,我使用Fiddler的一个简单功能,HOSTS来做转发,调试移动app,可是有的人会问了,HOSTS只能改变HOST,如果有以下情景,我该咋办?

比如,测试服务器地址是:192.168.0.69:8080      部署的项目名称叫做 demo  ,即访问的完整地址:http://192.168.0.69:8080/demo/

而在正式服务器上可能项目直接部署到了根目录: http://aip.demo.com   

这时候如果只是简单的使用HOSTS,起不到效果,因为本地部署的项目不在根目录下 ,提示找不到资源。怎么办呢?总不能为了测试把项目部署到根目录吧,这样可能会影响其他项目呢?


好吧,其实这时候使用HOSTS真的无能为力了,应该使用fiddler的另外一个更加强大的功能:script

在fiddler界面,点击右侧的FiddlerScript标签,进入FiddlerScript编辑器(如果没安装,Fiddler会提示安装)

在标签下有个 Go to 选择框,这里可以快速定位到script里相应的方法。这里我们要改变请求的地址,所以定位到的方法肯定是 OnBeforeRequest方法:

在OnBeforeRequest方法里面加入如下:

if(oSession.uriContains("www.baidu.com")){ oSession.url = oSession.url.Replace("www.baidu.com","news.sina.com.cn/society/"); }

这里呢,我们将百度替换成了新浪新闻的社会版页面,效果如下:


如图所示,我们访问的是百度,但是fiddler却跳到了新浪新闻的社会版页面,这正好解决了上一篇中HOSTS的不足。

FiddlerScript的功能十分的强大,这里我只是小试牛刀,算是抛砖引玉,大家有兴趣的,可以仔细研究一下啦

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐