赞
踩
Fiddler 简介
Fiddler 是位于客户端和服务器端的 HTTP 代理
目前最常用的 http 抓包工具之一
功能非常强大,是 Web 调试的利器
监控浏览器所有的 HTTP/HTTPS 流量
查看、分析请求内容细节
伪造客户端请求和服务器响应
测试网站的性能解密 HTTPS 的 Web 会话
全局、局部断点功能
第三方插件
场景使用场景
接口调试、接口测试、线上环境调试、Web 性能分析
判断前后端 bug、开发环境 hosts 配置、mock、弱网断网测试
编写程序部署到 Web 服务器
Web 服务器运行在服务器上,绑定 ip 地址并监听某端口,接收和处理 http 请求
客户端通过 http 协议获取服务器上的网页、文档等
工作原理
HTTP
Hyper Text Transfer Protocol(超文本传输协议)
用于从万维网服务器传输超文本到本地浏览器的传送协议
HTTP 协议是基于 TCP 的应用层协议,它不关心数据传输的细节,主要是用来规定客户端和服务端的数据传输格式,最初是用来向客户端传输 HTML 页面的内容。默认端口是 80
http 是基于请求与响应模式的、无状态的、应用层的协议
完整的 http 协议包含请求和响应两块内容
HTTP 请求报文
HTTP 请求报文主要由请求行、请求头部、空一行、请求正文(请求体)4 部分组成
如下是 fiddler 某个会话的请求报文
请求方法( Request Method)
请求方法 | 备注 |
GET | 请求资源 |
POST | 提交资源 |
Head | 获取响应头 |
PUT | 替换资源 |
DELETE | 删除资源 |
OPTIONS | 允许客户端查看服务器的性能 |
TRACE | 回显服务器收到的请求,用于测试或诊断 |
Uniform Resource Locator:统一资源定位符,用于描述网上的资源
格式:schema://host[:port#]/path/.../[?query-string]
scheme:协议,如 http,https,ftp 等
host:域名或者 IP 地址
port:端口
path:资源路径
query-string:发送的参数
请求头(Request Header)
请求头 描述 Host 主机 ip 地址或域名 User-Agent 客户端相关信息,如果操作系统、浏览器等信息 Accept 指定客户端接收信息类型,如:image/jpg,text/html,application/json Accept-Charset 客户端接受的字符集,如 gb2312、iso-8859-1 Accept-Encoding 可接受的内容编码,如 gzip Accept-Language 接受的语言,如 Accept-Language:zh-cn Authorization 客户端提供给服务端,进行权限认证的信息 Cookie 携带的 cookie 信息 Referer 当前文档的 URL,即从哪个链接过来的 Content-Type 请求体内容类型,如 Content-Type: Content-Length 数据长度 Cache-Control 缓存机制,如 Cache-Control:no-cache Pragma 防止页面被缓存,和 Cache-Control:no-cache 作用一样 | |
HTTP 响应报文主要由状态行、消息报头、空一行、响应正文 4 部分组成
如下是 fiddler 某个会话的响应报文
用以表示网页服务器 HTTP 响应状态的 3 位数字代码
状态码 | 描述 |
1XX | 提示信息,请求被成功接收 |
2XX | 成功,请求被成功处理 200 |
3XX | 重定向相关 304 |
4XX | 客户端错误 404 |
5XX | 服务器端错误 500 |
响应头 描述 Server HTTP 服务器的软件信息 Date 响应报文的时间 Expires 指定缓存过期时间 Set-Cookie 设置 Cookie Last-Modified 资源最后修改时间 Content-Type 响应的类型和字符集,如:Content-Type: text/html; charset=utf-8 Content-Length 内容长度 Connection 如 Keep-Alive,表示保持 tcp 连接不关闭,不会永久保持连接,服务器可设置 Location 指明重定向的位置,新的 URL 地址,如 304 的情况 | |
GET 请求
格式 http://host:port/path?xx=aa&yy=bb
如:
http://120.78.128.25:8080/futureloan/mvc/api/member/register?mobilephone=13555555528&pwd=123456
说明:
http/https:协议类型
host:服务器主机 ip 地址或域名
port:端口号,如果是 80 可以省略,其它端口必须指明
path:访问资源的路径
?:分隔符,用于区别 path 和参数
xx=aa、yy=bb:请求参数列表
&:多个参数的连接符号
总结
机会只垂青有准备的人,这是一个靠本事的社会。有时候,你之所以发展得不好,不是因为没有机遇,而是因为你没有准备好,导致机遇与你擦肩而过。如果你想要学习,什么时候开始都不晚,而不是瞻前顾后,你只要用尽全力,剩下的交给时间!
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。