Fiddler

2021-05-17  本文已影响0人  小赵不在

参考https://www.cnblogs.com/hong-fithing/p/7582947.html

一、简介

Fiddler是Web调试工具之一,能记录所有客户端和服务端的http和https请求。允许你监视、设置断点、甚至修改输入输出数据。
Fiddler包含了一个强大的基于事件脚本的子系统,并且能使用.net语言进行扩展。
越了解HTTP协议,越能掌握Fiddler的使用方法。

二、工作原理

Fiddler是以代理web服务器的形式工作的,它使用的代理地址:127.0.0.1,端口:8888。
当Fiddler退出时,会自动注销,这样就不会影响别的程序了。
当Fiddler非正常退出时,Fiddler不会自动注销,会造成网页无法访问。解决办法就是重启Fiddler。

个人理解:fiddler是一个抓包工具,当浏览器访问服务器会形成一个请求,此时,fiddler就处于请求之间,当浏览器发送请求,会先经过fiddler,然后在到服务器;当服务器有返回数据给浏览器显示时,也会先经过fiddler,然后数据才到浏览器中显示,这样一个过程,fiddler就抓取到了请求和响应的整个过程。

三、HTTP协议介绍

协议是指计算机通信网络中两台计算机之间进行通信必须遵守的规则或规定,超文本传输协议(HTTP)是一种通讯协议,他允许将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器。

四、HTTP协议的主要特点

  1. 支持客户/服务器模式
  2. 简单快速:客户向服务器请求服务时,只需传送请求方法和路径。 请求方法常用的有GET、HEAD、POST。 每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单, 使得HTTP服务器的程序规模小,因而通信速度很快。
  3. 灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。
  4. 无连接: 无连接的含义是限制每次连接只处理一个请求。 服务器处理完客户的请求, 并收到客户的应答后, 即断开连接。 采用这种方式可以节省传输时间。
  5. 无状态: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 //服务器当前不能处理客户端的请求,一段时间后可能恢复正常

上一篇下一篇

猜你喜欢

热点阅读