一、fiddler常用功能:

1. Fiddler 是位于客户端和服务器端的http代理,也是目前最常用的http抓包工具之一。它能够记录客户端和服务器之间的所有http请求,可以针对特定的http请求,分析请求数据、设置断点、调试web应用、修改请求的数据,甚至可以修改服务器返回的数据,功能非常强大,是web调试的利器。

既然是代理,也就是说,客户端的所有请求都要先经过fiddler,然后转发到相应的服务器,反之,服务器端的所有响应,也都会先经过fiddler然后发送到客户端,基于这个原因,fiddler支持所有可以设置http代理为127.0.0.1:8888的浏览器和应用程序。使用了fiddler之后,web客户端和服务器的请求如下所示:

2. fiddler界面如下:

3. Inspectors Tab下可以查看request的消息

1) Header : 查看header 2) WebForms:以直观的界面查看body的值以及Query String的值 3)Cooikes : 以直观的界面查看header中cookie的值 4) Raw : 可以查看完整的消息结构

4. Statistics:统计当前的会话信息,可获得整个页面加载所消耗的总体时间,从条形图标中可以分别出哪些请求耗时最多,以便于对页面的访问进行访问速度优化

5. Fiddler左下角有个命令行工具QuickExec,可以直接输入命令,常见的命令有:

① help:打开官方的使用页面介绍,所有的命令都会列出来 ② cls :清屏(Ctrl + X)③ select :选择会话的命令 ④ ?.png :用来选择.png后缀的图片⑤ bpu :截获request

6. fiddler中设置断点修改request:

① 方法一:打开fiddler,点击Rules ->Automatic Breakpoint ->before Requests (这种方法会中断所有会话),消除命令:点击Rules ->Automatic Breakpoint ->Disabled

② 方法二:在命令行中输入命令:bpu www.baidu.com (这种方法只会中断www.baidu.com),消除命令:在命令行中输入bpu,bpm

7. fiddler中设置断点修改response:

① 方法一:点击Rules ->Automatic Breakpoint ->after Response (这种方法会中断所有会话),消除命令:点击Rules ->Automatic Breakpoint ->Disabled

② 方法二:在命令行中输入命令:bpafter www.baidu.com(这种方法只会中断www.baidu.com),消除命令:在命令行中输入bpafter

8.fiddler常用断点命令:

bpafter xxx :中断URL包含指定字符的全部session响应(或者bpu xxx)

bps xxx :中断http响应状态为指定字符的全部session响应

bpv xxx :中断指定请求方式的全部session(或者bpm xxx)

go命令 :可以使得当前的请求跳过断点

9. 查询会话:Ctrl + F

10 . 保存会话 :选择想要保存的会话,点击File ->Save ->Selected sessions

11. fiddler模拟各种浏览器,可以点击菜单Rules -> User ->Agents

12. fiddler的Fiter功能使用:

①选择fiter ->选择 show only the following Hosts 选项,下方输入需要抓的url,点击Actions

② 在Composer中选择请求方法,输入url,选择http版本,点击Execute,点击Inspectors按钮以及JSON按钮,查看url的对应的接口以及返回的JSON文件,获取接口(没有接口文档的情况下可以用来抓取接口)

③ 想要抓取HTTPS的请求,需要浏览器安装证书,从fiddler中导出证书,然后打开浏览器导入证书

④ 检查代理设置,勾选对所有协议均使用相同的代理服务器

二、fiddler实现手机的抓包:

1. 手机抓包的前提:安装fiddler的电脑与手机app在同一网络中

2. 配置fiddler,允许远程连接

①打开fiddler,Tools ->Fiddler Options ->Connections ->勾选Allow remote computers to connect,允许其他设备将http / https请求发送到fiddler上来

② 选择HTTPS ->勾选HTTPS CONNECTS

3. 手机设置代理

① cmd -> ipconfig 查出电脑ip,并在手机上设置手动代理,输入电脑ip,端口号:8888并保存

② 要想抓取HTTPS请求,手机还需要安装证书,手机浏览器访问:http://电脑ip:8888,点击FiddlerRoot certificate安装证书即可

③ 点击手机中的设置 ->通用 ->关于本机 ->证书信息设置(信任)

fiddler -- 一个强大的抓包工具的更多相关文章

  1. 性能测试-2.Fiddler抓包工具的使用

    Fiddler基础知识(此文原文地址) Fiddler是强大的抓包工具,它的原理是以web代理服务器的形式进行工作的,使用的代理地址是:127.0.0.1,端口默认为8888,我们也可以通过设置进行修 ...

  2. 抓包工具 - Fiddler - (一)

    <转载于 miantest> Fiddler基础知识 Fiddler是强大的抓包工具,它的原理是以web代理服务器的形式进行工作的,使用的代理地址是:127.0.0.1,端口默认为8888 ...

  3. 【爬虫】网页抓包工具--Fiddler--Request和Response

    [爬虫]网页抓包工具--Fiddler Fiddler基础知识 Fiddler是强大的抓包工具,它的原理是以web代理服务器的形式进行工作的,使用的代理地址是:127.0.0.1,端口默认为8888, ...

  4. 抓包工具 - Fiddler - (二)

    <转载自 miantest> 在上一篇中介绍了Fiddler的基本使用方法.通过上一篇的操作我们可以直接抓取浏览器的数据包.但在APP测试中,我们需要抓取手机APP上的数据包,应该怎么操作 ...

  5. 抓包工具--Fiddler及charles的使用

    Fiddler和charles--是抓包工具,可以抓到pc端的请求,手机上设置代理后也可以抓到手机上的请求,也可以修改请求数据和返回的数据. 1.网页抓包,打开Fiddler或Charles应用直接访 ...

  6. linux抓包工具tcpdump基本使用

    tcpdump 是一款灵活.功能强大的抓包工具,能有效地帮助排查网络故障问题. tcpdump 是一个命令行实用工具,允许你抓取和分析经过系统的流量数据包.它通常被用作于网络故障分析工具以及安全工具. ...

  7. Ubuntu 16.04下安装Charles抓包工具

    Charles是一个跨平台的抓包工具,虽然没有Fiddler做的这么完美,但是也算是另一个选择. 下载: https://www.charlesproxy.com/download/ 注册: http ...

  8. 学习tcpIp必备的抓包工具wireshark

    wireshark是一个优秀的抓包工具 ip.src=192.168.10.123  发送http的一端 ip.dst=192.168.10.126 接收http的一端 如下图所示:

  9. 抓包工具fiddler

    具体的可以看这个链接,后来补充了些东西,cnblog复制图片太麻烦了 http://note.youdao.com/yws/public/redirect/share?id=37f8556270b44 ...

随机推荐

  1. bootstrap4 Reboot details summary 美化(点选禁止选中文本,单行隐藏角标,多行后移)

    bootstrap4 Reboot details summary 优化这块,主要是为了去掉details summary的角标~ 所以优化写了一下. 原始HTML <details> & ...

  2. Centos7安装jexus,部署asp.net core,asp.net mvc

    什么是Jexus 官网解释:https://www.jexus.org/ Jexus是一款Linux平台上的高性能WEB服务器和负载均衡网关,Jexus Web Service,简称JWS,以支持AS ...

  3. C# 方法扩展

    using System.Collections.Generic; namespace Extra_Function { public static class Function { public s ...

  4. 记录心得-FastJson分层解析demo示例

    记录一下,平时用到,可速查!关键: // startArray(); 开始解析数组 // endArray(); 结束解析数组 // startObject(); 开始解析键值对 // endObje ...

  5. struts2 在 Action 或 Interceptor 中获取 web.xml 中配置的 <context-param> 参数 (这是我的第一篇博文,哈哈。)

    最近为了改一个问题,想加一个控制开关,就在web.xml 中配置了一个 <context-param> 参数,并在 Action 或 Interceptor 中获取参数值. 1.在 web ...

  6. FileOutputSream文件字节输出流

    1.FileOutputSream文件字节输出流:  输入--写出--使用:  输出--写入--存储: 写出写入是对硬盘而言: 其中,OutputStream为所有类型的字节输出流的超类: FileO ...

  7. Ubuntu下载

    由于官网服务器在国外,下载速度奇慢,所以我们可以利用阿里云镜像下载ubuntuubuntu 14.04:http://mirrors.aliyun.com/ubuntu-releases/14.04/ ...

  8. Global.asax

    ASP.NET Global.asax 文件使用方法 - .net 标签:               asp.net.netapplicationauthenticationsessionobjec ...

  9. GO语言从入门到放弃目录

    GO语言基础 第一个GO程序 GO语言常量和变量 GO语言数据类型 GO语言流程控制 GO语言数组 GO语言切片 GO语言 map GO语言函数 GO语言指针 Go语言接口 GO语言常用包 GO语言的 ...

  10. java线程学习之join方法

    join()方法表示一个线程要加入另一个线程,直到被加入的线程执行完毕. 这个概念不好理解的话看面这个例子 public class TestJoin { public static void mai ...