测试工具Fiddler:初识Http协议抓包工具
白羽 2019-04-09 来源 :网络 阅读 2466 评论 0

摘要:本文将带你了解测试工具Fiddler:初识Http协议抓包工具,希望本文对大家学测试工具有所帮助。



本文将带你了解测试工具Fiddler:初识Http协议抓包工具,希望本文对大家学测试工具有所帮助。

测试工具Fiddler:初识Http协议抓包工具


 Fiddler简介

  Fiddler是用一款使用C#编写的http协议调试代理工具。它支持众多的http调试任务,能够记录并检查所有你的电脑和互联网之间的http通讯,可以设置断点,查看所有的“进出”Fiddler的数据(cookie,html,js,css等)。

  本文为Fiddler入门教程,主要介绍Fiddler下载安装、Http接口抓包分析及模拟请求方法。

  运行环境为Windows 7系统,Fiddler版本为4。(Fiddler有.net 2.0 和 .net 4.0 两种版本,根据自己系统.net framework版本选择相应版本即可)

  2. Fiddler安装

  1.官网下载

  2.安装步骤

  双击FiddlerSetup.exe即可完成安装

  3.启动Fiddler

  开始菜单找到Fiddler 4或找到Fiddler安装目录下的Fiddler.exe,运行即可

  回到目录

  3. Fiddler配置

  首先需要对Fiddler抓取Https请求进行相关配置:

  1. 打开Fiddler配置项:Tools –> Options

    

  2. 打开配置项HTTPS,勾选“Capture HTTPS CONNECTs”,同时勾选“Decrypt HTTPS traffic”,弹出的安装证书对话框时选择“是”。如果需要监听不可信的证书的HTTPS请求的话,需要勾选“Ignore server certificate errors (unsafe)”。

   

  4. 分析Http请求

  4.1 Http消息结构简介

  4.1.1 Request请求消息

  Request请求消息分为3部分,第一部分叫Request line, 第二部分叫Request header, 第三部分是body. header和body之间有个空行, 结构如下图:

   

  其中,第一行中的Method表示请求方法,比如""POST"",""GET"", Path-to-resoure表示请求的资源, Http/version-number 表示HTTP协议的版本号。当使用""GET"" 方法时, body为空

  4.1.2 Response响应消息

  和Request消息的结构基本一样,Response响应消息的结构同样也分为三部分:第一部分叫Response line, 第二部分叫Response header,第三部分是body. header和body之间也有个空行, 结构如下图:

   

  HTTP/version-number表示HTTP协议的版本号,status-code 和message 表示Http响应状态码及消息文本,常见的有 200 OK, 302 Found, 403 Forbidden,404 Not Found,500 Internal Server Error等。

  4.2 分析Get接口

  4.2.1 请求示例

  我们在运行Fiddler后,使用Chrome浏览器打开百度首页后,并搜索关键词fiddler

   

  4.2.2 查看Get请求

  此时Fiddler会抓取浏览器所有的Http请求,点击任何一条请求均可看到详细信息,包括协议类型,URL,Client及cookie信息。

  如打开百度首页,Http请求内容如下:

   

  输入搜索词Fiddler后,百度搜索Http请求如下(可以看到请求关键参数:wd=fiddler):

   

  点击右侧Raw查看请求详细信息:协议类型,请求URL,参数,Headers等,其中GET类型Http接口参数在请求URL中以?打头的key=value形式,多个参数之间以&分割

   

  4.2.3 查看Get响应

  点击右下方Raw可以查看详细的响应内容,包括status line,headers及body三部分

   

  4.3 分析Post接口

  4.3.1 请求示例

  我们在运行Fiddler后,使用Chrome浏览器打开百度首页后,点击“登录”按钮,输入用户名密码后完成登录

   

  4.3.2 查看Post请求

  在Fiddler中,点击左侧请求可以查看本次登录请求信息

   

  点击右侧Raw可以查看Post请求详细信息,包括request line,headers及body三部分

   

  4.2.3 查看Post响应

  点击右下方Raw可以查看详细的响应内容,包括status line,headers及body三部分。

   

  5. 模拟Http请求

  5.1 打开调试页面

  运行Fiddler,打开右侧Composer

   

  5.1 模拟Get请求

  Get请求相对比较简单,填入URL及必须的Headers信息即可,如我们模拟百度搜索词语lovesoo,流程如下:

  选择接口类型为GET,填入URL:https://www.baidu.com/s?wd=lovesoo,后点击Execute执行即可

   

  在Fiddler左侧点击本次Get请求,就可以看到请求及响应详细内容:

   

  5.2 模拟Post请求

  这里我们选取一个相对比较简单的Post接口,博客园首页获取编辑推荐文章的editor_pick_count字段接口:

   

  该接口只需要传入一个参数即文章URL,流程如下:

  选择接口类型为POST,填入URL:https://www.cnblogs.com/aggsite/EditorPickStat,在Request Body填入{""url"":""//www.cnblogs.com/hohoa/p/7739271.html""},最后点击Execute执行即可

   

  在Fiddler左侧点击本次Post请求,就可以看到请求及响应详细内容:

    

  这样我们就完成了Fiddler的入门教程,从软件下载安装到常见的Get/Post类型Http请求抓包及模拟。



本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标软件测试之测试工具频道!

本文由 @白羽 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程