HTTP协议抓包 【HTTP协议解析】

发布于:2021-10-21 15:27:34

一、Fiddler抓包原理


为什么fiddler能抓到包?


原因在于:


1.客户端浏览器在发送请求的时候,会打开一个代理服务器,


这个代理服务器的地址是127.0.0.1,端口号为8888。


2.fiddler会不断监听8888端口发出来的请求,一旦监听到了,就会转发给厂商服务器。


3.服务器要转发给客户端,也会发送给8888端口,同样会被fiddler监听到,然后在转发给客户端。


?


二、HTTP协议状态码

首先,HTTP状态码是存放在响应报文里的。


浏览器向网页所在服务器发送请求,在浏览器接收并显示网页前,此网页所在的服务器会返回一个包含HTTP状态码的信息头,用以响应浏览器的请求。


?


HTTP状态码由三个十进制数字组成。


第一个数字定义了状态码的类型,


后两个数字没有分类的作用,作为具体描述。


一共5种类型:



1##:信息,服务器收到请求,需要请求者继续执行操作。


2##:成功,操作被成功接收并处理。


3##:重定向,需要进一步的操作以完成请求。


4##:客户端错误,请求包含语法错误或者无法完成请求。


5##:服务器错误,服务器在处理请求的过程中发生了错误。



常见HTTP状态码:


200-请求成功


301-资源(网页等)被永久转移到了其他URL


404-请求的资源(网页等)不存在


500-内部服务器错误


?


三、HTTP包分析



#:编号


Result:状态码


Protocol:基于的协议


Host:主机IP地址


URL:要访问的统一资源定位符


Body:包的大小


Caching:缓存机制


Content-Type:内容的格式,是application/json,还是text/html,还有编码格式(UTF-8)


Process:从哪个进程里抓取的


Comments:备注


Custom:自定义



?


四、要分析哪些?

1.Insectors:分析包的请求和响应


2.AutoResponder:线上调试


3.Composer:接口测试


4.Filters:过滤器


其他可忽略


?


五、举例

以wup.browser.qq.com为例:



Request Headers是请求头


Response Headers是响应头


请求报文的请求行中:


1.方法



是get还是post等,


是对所请求对象进行的操作,方法的本质就是一些命令。


后面我们会给出GET&POST的区别。



2.请求的URL


3.HTTP协议版本号


然后是首部行,用来说明浏览器、服务器或者报文主体的一些信息。


最后是实体主体,一般不用。


响应报文的状态行中:


1.HTTP协议版本号


2.状态码,是200还是404等


然后是首部行,用来说明浏览器、服务器或者报文主体的一些信息。


最后是实体主体,一般不用。

相关推荐

最新更新

猜你喜欢