fiddler下载
官网下载地址是https://www.telerik.com/download/fiddler
下载的版本是:fiddler classic
安装之后不会自动生成快捷方式,在下载的文件里找到exe文件,生成快捷方式之后拖到桌面
一般不下载到C盘
fiddler基础设置
Rules---Hide Image Requests(隐藏图片请求)和Hide CONNECTS(隐藏链接) 这两个勾选
HTTPS数据报文传输的时候涉及到证书及数据加密的问题,所以Fiddler需要抓取HTTPS报文的话还需要做其他配置。
首先还是打开Fiddler配置:Tools->Options->HTTPS
Tools---HTTPS---Decrypt HTTPS traffic这个选项勾选----Ignore server certificate errors这个选项勾选----Check for certificate revocation 这个选项勾选
Connections----第一次下载取消勾选Act as system proxy on startup
Connections---Allow remote computers to connect这个选项只有在抓手机端的时候才需要勾选,其他时候不需要勾选
WinConfig---下面全部勾选
fiddler证书
chrome浏览器---右上角三个点---设置---安全和隐私设置---安全----管理证书---受信任的根证书颁发机构---导入---导入成功
Fiddler工作原理
Fiddler是位于客户端和服务器端之间的HTTP代理, 它能够记录客户端和服务器之间的所有 HTTP(S)请求,可以针对特定的HTTP(S)请求,分析网络传输的数据,还可以设置断点、修改请求的数据和服务器返回的数据。
Fiddler的默认代理地址为:127.0.0.1 默认端口号:8888
Http协议
超文本传输协议(HTTP)是一种通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器。
HTTP协议的主要特点:
简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET,POST,HEAD。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,是的HTTP服务器的陈旭规模小,因为通信速度很快。
灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。
无连接:限制每次链接只处理一个请求。服务器处理完客户的请求,并受到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
无状态:HTTP协议是无状态协议。无状态是指协议对于事物处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则需要重新传,这样可能导致每次链接传输的数据量增大。另一方
Http协议之请求
HTTP请求有三部分组成:请求行,请求报头,空行,请求正文(请求正文可有可无)
请求方法: 各个方法的解释如下:
GET:请求获取Request-URI所标识的资源
POST:在Request-URI所标识的资源后附加新的数据
HEAD:请求获取由Request-URI所标识的资源的响应消息报头
PUT:请求服务器存储一个资源, 并用Request-URI作为其标识
DELETE:请求服务器删除Request-URI所标识的资源
TRACE:请求服务器回送收到的请求信息,主要用于测试或诊断
CONNECT:保留将来使用
OPTIONS:请求查询服务器的性能,或者查询与资源相关的选项和需求
应用举例:
GET方法在浏览器的地址栏中输入网址的方式访问网页时, 浏览器采用GET方法向服务器获取资源,eg:GET /form.html HTTP/1.1 (CRLF)
POST方法要求被请求服务器接受附在请求后面的数据, 常用于提交表单。
HTTP协议之响应
在接收和解释请求消息后,服务器返回一个HTTP响应消息。
HTTP响应也是由三个部分组成,分别是:状态行、消息报头、响应正文
状态代码有三位数字组成,第一个数字定义了响应的类别,且有五种可能取值:
1xx:指示信息--表示请求已接收,继续处理
2xx:成功--表示请求已被成功接收、理解、接受
3xx:重定向--要完成请求必须进行更进一步的操作
4xx:客户端错误--请求有语法错误或请求无法实现
5xx:服务器端错误--服务器未能实现合法的请求
常见状态代码、状态描述、说明:
200 OK //客户端请求成功
400 Bad Request //客户端请求有语法错误, 不能被服务器所理解
401 Unauthorized //请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用
403 Forbidden //服务器收到请求,但是拒绝提供服务
404 Not Found //请求资源不存在,eg: 输入了错误的URL
500 Internal Server Error //服务器发生不可预期的错误
503 Server Unavailable //服务器当前不能处理客户端的请求,一段时间后可能恢复正常