当我以前在调PC端网页的时候,Firefox有Firebug,Chrom也有自己的调试抓包工具,用起来很方便。

但是现在我要在手机上面调试页面,这个时候就没有这么方便的现成工具了。

后面发现了Fiddler,设置一下后,就能用这个来抓取手机访问页面时候的请求了。

下面是文章大纲:

  1. Fiddler配置与手机无线的配置
  2. HOST修改
  3. AutoResponder
  4. 指令
  5. 过滤Filter
  6. 插件

一、Fiddler配置与手机无线的配置

1、首先电脑和手机要使用同一个无线

  

2、配置Fiddler,单机Tools=》Fiddler Options

  

3、配置手机无线,我的手机是Android机,IOS也是差不多的,就是加个代理和端口,主机名就是你电脑的IP地址,自己用ipconfig看下就有了。

  改好后,要重新连接一下,才能让Fiddler抓取到。

  

二、HOST修改

我一开始调试手机网页,都是先把文件上传到绑域名的服务器上,然后再访问测试,这样效率有点低。

以前的PC网页都是在本地调试好后上传到服务器上的,现在我也想这么做,这个时候就需要在Fiddler中配置域名转向了。

1、例如用手机访问http://www.pwstrick.com/fiddler/这个页面:

  

Fiddler抓取到的如下所示:

  

2、接下来我要让http://www.pwstrick.com/fiddler/访问的是我本中的工程文件。

点击Tools=》HOSTS打开的页面如下:

  

满心欢喜的以为域名已经转向了,用浏览器打开,duang一下是下面那个鸟样:

  

后面我想到得在我本地Apache上面配置个虚拟目录:

  

刷新下页面:弹出的内容就变成本地设置的了

  

现在访问pwstrick地址的HOSTIP就变成了127.0.0.1了

  

三、AutoResponder

刚上面的host修改,是把所有这个域名下的文件都重定向。但有的时候只需要测试某个文件,这个时候就可以用AutoResponder了。

1、将第一个和第二个打勾,第二个不打勾的话,所有页面就都不能访问啦,第二个选项的意思是不匹配的请求都保持不变。

  

2、在下面做个匹配规则,我选的是完全匹配,这里可以用正则表达式,高大上的东西。

  

  

3、满怀期待的刷新下页面,出来了用的是demo2.js文件中的内容

  

点击进入fiddler文档页面查看更多规则事例...

这个请求还可以让他延时请求,或者其他方式,选项如下:

  

四、指令

在软件的底部有个打指令的地方,目前我用的最多的就cls,就是清屏幕,其他指令还不怎么用,我比较low,囧。点击查看fiddler官方文档

  

刚查看文档,发现几个未来应该会用到的指令,这里做个小记录

?sometext

  

  

输入?pwstrick然后直接按回车就会看到搜索URL中包含pwstrick的地址。

=status

=method

选择响应状态=status (200、404等)或请求方法=method的会话(POST、GET等)

@host

选择会话中域名包含host的会话,此时按Enter键可高亮所有匹配的结果

将会把api.pwstrick.com、www.pwstrick.com等URL选中

  

!dns hostname

进行目标域名的DNS查找,并将结果显示在LOG选项卡上

  

  

五、过滤Filter

  

选项好多,这里我打算把pwstrick.com给过滤出来,然后就把那个选项打勾

接着点击Actions中的Run Filterset Now,不过滤请求的话,太多眼都看花了,随便访问个线上网站就有几十个请求,唰唰下来

  

六、插件

1、JavaScript Formatter

将压缩过的JavaScript脚本格式化,查看别人网站时候的压缩脚本时候用很给力

首先得要先下载这个插件然后安装,点击页面搜索到JavaScript Formatter,点击下载。

安装好后重启Fiddler,接下来邮件那个URL就会看到下图中的红色框选项,点击一下。

  

接下来就能看到好看的JavaScript脚本了,不过不足的是不是彩色的,没有高亮。这个时候可以借助另外一个插件配合一下,那就是Syntax-Highlighting Add-Ons,也是在官网的插件页面搜索标题下载,下载完后就会多个SyntaxView选项,下图中的截图是我已经下载好了的画面,并且Syntax-Highlighting Add-Ons这个插件还可以做些其他功能具体可以查看文档。

  

2、Gallery

这是看图片的一个插件,没有这个插件的话我还得复制URL,然后在浏览器中输入看图片。

我抓取了花瓣网的页面做演示:我先做了个域名过滤,旁边的Gallery一栏就会自动出来图片。

  

  

参考资料:

http://www.6san.com/789/  Fiddler过滤指定域名

http://tid.tenpay.com/?p=3011  前端开发利器—FIDDLER

http://ju.outofmemory.cn/entry/148593  使用前端开发利器Fiddler调试手机程序

http://www.cnblogs.com/mcho/p/3983066.html  Fiddler (六) 最常用的快捷键

http://my.oschina.net/leejun2005/blog/151103  关于 WEB/HTTP 调试利器 Fiddler 的一些技巧分享

http://www.cnblogs.com/strick/p/4570006.html

移动开发中Fiddler的那些事儿 (转)的更多相关文章

  1. 总结iOS开发中的断点续传那些事儿

    前言 断点续传概述 断点续传就是从文件赏赐中断的地方重新开始下载或者上传数据,而不是从头文件开始.当下载大文件的时候,如果没有实现断点续传功能,那么每次出现异常或者用户主动的暂停,都会从头下载,这样很 ...

  2. 支付宝(alipay)即时到账收款接口开发中的那些事儿

    不会做,看看也可以会,要做好就还是需要多学习 国庆回来就一直没状态,看完<银河护卫队>,印象最深的竟然是只有两句台词的呆萌groot,昨天才休息一天,大耍大吃,今天还是把昨天的知识学习一下 ...

  3. Java开发中的23种设计模式详解

    [放弃了原文访问者模式的Demo,自己写了一个新使用场景的Demo,加上了自己的理解] [源码地址:https://github.com/leon66666/DesignPattern] 一.设计模式 ...

  4. Java开发中的23种设计模式详解(转)

    设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了 ...

  5. (转) 浅析HTML5在移动应用开发中的使用

    (转)浅析HTML5在移动应用开发中的使用 (原)http://www.iteye.com/magazines/67   2012-03-07  来自 UECD.163.com  编辑 wangguo ...

  6. java开发中的23中设计模式详解--大话设计模式

    设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了 ...

  7. iOS开发中的数据安全隐患和解决方案

    移动互联网的兴起,每天都会涌现大量的app产品,无论公司开发还是个人开发,大家都在追求更快的抢占市场,但是确忽略了打磨产品,也忽略了移动开发中的数据安全隐患,如果我们用Charles工具,很容易截获到 ...

  8. Java开发中的23种设计模式(转)

    设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了 ...

  9. iOS开发中关于UIImage的知识点总结

    UIImage是iOS中层级比较高的一个用来加载和绘制图像的一个类,更底层的类还有 CGImage,以及iOS5.0以后新增加的CIImage.今天我们主要聊一聊UIImage的三个属性: image ...

随机推荐

  1. tolua 有些功能可以用(经过测试)

    tolua 提供几个 C++ 与 Lua 进行数据交换的工具函数. ~~ tolua.type 返回一个 C++ 对象的类型描写叙述字符串. local node = display.newNode( ...

  2. Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架

    Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架.Bootstrap 是基于 HTML.CSS.JAVASCRIPT 的. 历史 Bootstrap 是由 Twitter 的 ...

  3. mysql-merge合并表

    merge表 注意: 1 每个子表的结构必须一致,主表和子表的结构需要一致, 2 每个子表的索引在merge表中都会存在,所以在merge表中不能根据该索引进行唯一性检索. 3 子表需要是MyISAM ...

  4. xcode中找不到XXX.dylib

    xcode中找不到 XXX.dylib 了,比如libz.tbd 如果要用到 libz.dylib,可以用下面的办法,来自 Stack Overflow. Go to Build Phases > ...

  5. TCP/IP协议栈源码图解分析系列10:linux内核协议栈中对于socket相关API的实现

    题记:本系列文章的目的是抛开书本从Linux内核源代码的角度详细分析TCP/IP协议栈内核相关技术 轻松搞定TCP/IP协议栈,原创文章欢迎交流, byhankswang@gmail.com linu ...

  6. c#与oracle数据库连接池

    c#与oracle数据库连接池 在做一个项目,中间要使用webservice和oracle数据库.我在服务端做了用户身份认证,也就是使用session传递用户的登陆信息.在测试时,当用户少的时候,没有 ...

  7. c/c++中main函数参数讲解

    参考地址: http://blog.csdn.net/cnctloveyu/article/details/3905720 我们经常用的main函数都是不带参数的.因此main 后的括号都是空括号.实 ...

  8. 程序猿进化 - 在拉钩子1024对APE节讲座计划

    注意:下面这篇文章来自于我在网上拉勾1024对APE节现场演示程序. 我是蒋宇捷,信天创投的合伙人.之前是百度魔图的联合创始人. 我先做个自我介绍,事实上每次介绍自己事实上是非常痛苦的事情,由于我前不 ...

  9. pcie inbound、outbound及EP、RC间的互相訪问

    Inbound:PCI域訪问存储器域 Outbound:存储器域訪问PCI域 RC訪问EP: RC存储器域->outbound->RC PCI域->EP PCI域->inbou ...

  10. Ice-2.1.2在RHEL Server 5.5上的安装

         因为项目的需要,服务器上的程序需要使用Ice接口与其它程序通信,对方提供了一个Windows版的工程,我要把它移植到Linux服务器上,既然Ice是跨平台跨语言的中间件,想来移植不是很困难, ...