第二篇 Fiddler配置_浏览器&手机
Posted mamingchen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第二篇 Fiddler配置_浏览器&手机相关的知识,希望对你有一定的参考价值。
什么是Fiddler?
网络项目的开发和测试中,Fiddler是强大的抓包工具,它的原理是以web代理服务器的形式进行工作的 ,可以说是非常常用的手头工具了,本文就Fiddler使用和配置进行说明。
代理就是在客户端和服务器之间设置一道关卡,客户端先将请求数据发送出去后,代理服务器会将数据包进行拦截,代理服务器再冒充客户端发送数据到服务器;同理,服务器将响应数据返回,代理服务器也会将数据拦截,再返回给客户端
了解HTTP协议
-
要分析Fiddler抓取的数据包,先要熟悉HTTP协议。HTTP即超文本传输协议,是一个基于请求与响应模式的、无状态的、应用层的协议,绝大多数的Web开发,都是构建在HTTP协议之上的Web应用。
-
HTTP的工作过程:当我们请求一个超链接时,HTTP就开始工作了,客户端先发送一个请求到服务器,请求内容包括:协议版本号、请求地址、请求方式、请求头和请求参数;服务器收到请求后做相应的处理,并将响应数据返回到客户端,响应内容包括:协议版本号、状态码和响应数据。前端根据响应数据做相应的处理,就是最终我们看到的内容。这些过程是HTTP自动完成的,我们只是输入或点击请求地址,然后查看前端给我们展示的内容。更多关于HTTP协议的介绍请参考:http://www.cnblogs.com/li0803/archive/2008/11/03/1324746.html
-
请求方式常用的有:GET、PUT、POST、DELETE。
-
HTTP状态码主要分为5类:以1开头的代表请求已被接受,需要继续处理;以2开头的代表请求已成功被服务器接收、理解、并接受;以3开头的代表需要客户端采取进一步的操作才能完成请求;以4开头的代表了客户端看起来可能发生了错误,妨碍了服务器的处理;以5开头的代表了服务器在处理请求的过程中有错误或者异常状态发生,也有可能是服务器意识到以当前的软硬件资源无法完成对请求的处理。
-
常见的主要有:每个状态码的详细介绍请参考:https://baike.baidu.com/item/HTTP%E7%8A%B6%E6%80%81%E7%A0%81/5053660?fr=aladdin
- 200:服务器成功处理了请求;
- 302:请求的URL已临时转移;
- 304:客户端的缓存资源是最新的,要客户端使用缓存。
- 404:未找到资源;
- 500:内部服务器错误;
- 503:服务器目前无法为请求提供服务
Fiddler的配置及使用
1. 安装
直接在官网下载最新版就行: https://www.telerik.com/fiddler , 根据自己的系统下载版本,正常安装
Fiddler安装后,默认的端口号是8888,这个可以根据自己需要进行修改
Fiddler要能进行抓包,需要确保Capture Traffic是开启的(安装后是默认开启的),勾选File->Capture Traffic,也可以直接点击Fiddler界面左下角的图标开启和关闭抓包。
如果想抓HTTPS的请求,Fiddler需要做如下的设置
Tools --> Options ,然后按下图进行勾选,
将Fiddler正式安装在电脑上,点Action--> Trust Root Certificate--> Yes ,一步步确定
2. 浏览器配置
以Chrome浏览器为例,需要配置代理,fiddler才能抓到包。
浏览器到此为止,基本上不需要做什么配置,安装后就可以进行抓包了。
3. 手机的配置 ---安卓手机
(1)以安卓手机为例,先设置到代理,电脑需要连接WIFI,手机与电脑连接相同的WIFI,路径:设置 -- >已连接的WIFI -->高级设置-->代理:
代理服务器主机名的获取,cmd --> ipconfig --> IPv4 地址对应的 IP就是代理服务器主机名
(2)对于手机要抓包,还需要在Fiddler上进行如下配置
路径: Tools --> Options --> 勾选:Allow remote Computers to connect
(3) 手机要能够正常抓包,还需要安装证书,在手机浏览器里输入:代理服务器地址:端口号,(如 192.168.123.122:8888)
看到这里,恭喜您呐,PC浏览器,手机都可以正常的使用Fiddler抓包了。
4.Iphone手机配置 --- 2018.07.26补充
本打算就以安卓为例就可以了,结果发现很多小伙伴在配置IPhone的时候出现了问题,总是链接不上抓包工具,出现下面的错误
此处再补充一下Iphone的配置,因为它有一个特殊地方需要打开。直接上图吧,简单粗暴直观,照着配置就行了
(1) 先设置代理
(2) 安装fiddler证书
(3) 前面的配置都做好了,最关键的一步就是要信任证书
最后一步是关键了,很多小伙伴都折到这一步,连不上代理,找不到原因了。
经过这三步,Iphone就可以正常的被代理了
2018.6.21补充:
相同网关下,电脑连网线,手机连WiFi,也能抓包
最近公司的无线WiFi特别不稳定,电脑经常断网,可是不连WiFi又抓不了包,怎么办?
小哥突发奇想,公司的无线和有线都是在同一个网关下的,那是不是手机连WiFi,电脑连有线,也可以抓包,而且保证电脑不断网?
有想法就试一试。
(1)电脑连接网线
(2)cmd先获取以太网的IP地址
(3)手机还是继续连接WiFi,设置代理同上,只不过ip地址换成了以太网的
(4)通过fiddler测试,可以抓到包,测试通过
以上是关于第二篇 Fiddler配置_浏览器&手机的主要内容,如果未能解决你的问题,请参考以下文章
[知了堂学习笔记]_牵线Eclipse和Tomcat第二篇 —— 安装Tomcat&&添加Tomcat到Eclipse