在浏览器中输入一个网址之后为什么可以打开一个网页?
因为Web浏览器和Web服务器是通过HTTP协议进行通信的。(如下图)
![](https://img-blog.csdnimg.cn/img_convert/76995e59abf74a11bd4290caead590b3.png)
HTTP协议采用了请求/响应模型。客户端向服务器发送一个请求报文,请求报文包含请求的方法、URL、协议版本、请求头部和请求数据。服务器以一个状态行作为响应,响应的内容包括协议的版本、成功或者错误代码、服务器信息、响应头部和响应数据。
HTTP报文分2个:HTTP请求报文和HTTP响应报文;
请求和响应的报文格式都一样,分成了3个部分:起始行(方法,url,协议版本)、首部、主体【首部和主体之间有一个空行】
![](https://img-blog.csdnimg.cn/img_convert/c05094290c4c4f3b88d0b743a60c083a.png)
常见抓包工具
wireshark(作用最全面的抓包工具,通过网卡的所有包都可以抓,需要对计算机网络非常了解)
只抓浏览器的包:F12(只抓HTTP协议的包)
移动端和客户端:fiddle(只抓HTTP协议的包)
F12是录制下来的包
Fiddle使用代理抓包
代理抓包
什么叫代理?(快递员)改变上网的机制
代理可以做很多的事情,比如扣下来改包,改请求,改响应,改返回或者不请求之间返回等等;
![](https://img-blog.csdnimg.cn/img_convert/100f9610373d4efb813f845aa2fbb56c.png)
接口和抓包
接口:(API)应用程序接口,是一些预先定义的函数或者指软件系统不同组成部分衔接的约定
抓包:抓取接口所有信息(地址,参数,头,返回体)