HTTP 协议的基本格式和 fiddler 的用法
一、HTTP是什么?
HTTP (全称为 "超⽂本传输协议") 是⼀种应用非常广泛的应用层协议
所谓 " 超文本 " 的含义 , 就是传输的内容不仅仅是文本 ( 比如 html, css 这个就是文本 ), 还可以是一些其他的资源, 比如图片 , 视频 , 音频等二进制的数据。 是一个简单的请求响应,运行在 TCP 之上。规定客户端发送什么样的请求以及得到什么样的响应。 请求和相应消息的头是以 ASCII 形式给出;而消息类容则已 格式
当我们在浏览器中输⼊⼀个 搜狗搜索的 "网址" (URL) 时, 浏览器就给搜狗的服务器发送了⼀个 HTTP 请求, 搜狗的服务器返回了⼀个 HTTP 响应。 这个响应结果被浏览器解析之后, 就展示成我们看到的⻚⾯内容. (这个过程中浏览器可能会给服务器发送多个 HTTP 请求, 服务器会对应返回多个响应, 这些响应⾥就包含了⻚⾯ HTML, CSS, JavaScript, 图片, 字体等信息)。
二、HTTP 协议的工作过程
当我们在浏览器中输入一个 "网址", 此时浏览器就会给对应的服务器发送一个 HTTP 请求. 对方服务器收到这个请求之后, 经过计算处理, 就会返回一个 HTTP 响应.事实上 , 当我们访问一个网站的时候 , 可能涉及不止一次的 HTTP 请求 / 响应 的交互过程 . 可以通过 chrome 的开发者工具观察到这个详细的过程 .
通过 F12 打开 chrome 的开发者工具 , 切换到 Network 标签页 . 然后刷新页面即可看到如下图效果. 每一条记录都是一次 HTTP 请求 / 响应
三、HTTP 协议格式
请求和响应的格式第一行不一样,后边的都一样。都分四个部分: 行信息(请求=>请求行,响应=>响应行/状态行) 头信息(请求=>请求头,响应=>相应头) 空行 body(正文)(请求=>请求正文,响应=>响应正文)
1、常用的抓包工具
这里列举了常用的抓包工具 比如常用的抓包工具,,。
以 Fiddler 为例. (下载地址: https://www.telerik.com/fiddler/ )
左侧窗⼝显示了所有的 HTTP请求/响应, 可以选中某个请求查看详情. 右侧上⽅显示了 HTTP 请求的报文内容. (切换到 Raw 标签页可以看到详细的数据格式) 右侧下⽅显示了 HTTP 响应的报文内容. (切换到 Raw 标签页可以看到详细的数据格式) 请求和响应的详细数据, 可以通过右下角的 View in Notepad 通过记事本打开.
2、抓包工具原理
3.Fiddler的原理
3.抓包结果
上一篇:
JS实现多线程数据分片下载
下一篇:
计算两幅图像的相似度总结