抓包工具fiddler的基础知识详解

一、简介

fiddler是位于客户端和服务端之间的http代理

1、作用
  • 监控浏览器所有的http/https流量
  • 查看、分析请求内容细节
  • 伪造客户端请求和服务器请求
  • 测试网站的性能
  • 解密https的web会话
  • 全局、局部断电功能
  • 第三方插件
2、使用场景
  • 接口调试、接口测试、线上环境调试、web性能分析

  • 判断全后端bug、开发环境hosts配置、mock、弱网断网测试使用

在这我也准备了一份软件测试视频教程(含接口、自动化、性能等),需要的可以直接在下方观看,或者直接关注VX公众号:互联网杂货铺,免费领取

软件测试视频教程观看处:

2023完整版阿里大牛7天软件测试零基础速成内部教程,从基础到项目实战学完即入职。

3、http报文分析
3.1、请求报文

http请求报文由3部分组成:请求行、请求头、请求体

b59b1e1a45664fa1991648c85d10aece

进一步分解,得到一幅更详细的结构图

6e16ff6b7e014f73af76553094a7f12e

经fiddler实际抓包分析如下:

image-20230623183127050

由于get请求的参数拼接到URL中,所有get请求的请求体中没有参数

3.2、响应报文

http请求的响应报文也由三部分组成:响应行、响应头、响应体

48d30ffb5c64443aaabbb32f33e3cf6c

进一步分解,得到一幅更详细的结构图

61a7f3114f7b4c659cc5070f6c8b26b5

经fiddler实际抓包分析如下:

image-20230623205254847

常见的状态码

状态码状态消息含义
200Success成功
301Moved Permanently永久跳转
302Moved Temporarily临时跳转
403Forbidden(禁止)请求被服务器拒绝了(权限不足)
404Not Found(未找到)未找到资源
500Internel server error服务器内部错误
502Bad Gateway服务器网关错误
504Gateway Timeout服务器网关超时
4、介绍fiddler界面功能

fiddler界面介绍

名称作用
Headers
TextView以文本形式查看 请求/响应 体
SyntaxView以语法形式查看 请求/响应 体
WebForms以表单形式查看 请求/响应 体
HexView以十六进制形式查看 请求/响应 体
Auth查看请求是否有授权信息
RawHttp协议包格式查看 请求/响应 体
Json以json形式查看 请求/响应 体
XML以xml形式查看 请求/响应 体
ImageView以图片形式查看响应体
WebView以网页形式查看响应体(预览)
4.1、AutoResponder(自动响应器)
4.1.1、作用

AutoResponder可用于拦截某一请求,进行如下操作(即mock操作):

  • 重定向到本地的资源
  • 使用fiddler的内置响应
  • 自定义响应

AutoResponder功能示意图

4.2.2、操作

AutoResponder操作1

AutoResponder操作2

AutoResponder操作3

AutoResponder操作4

4.2、Composer(设计请求)
4.1.1、作用

该功能的作用是自己写一个请求(包括请求行、请求头、请求体),发送给服务器

4.1.2、操作

image-20230624224243037

4.3、断点
4.3.1、全局断点

该断点会影响所有的请求或响应,测试时不易使用,用的不多

4.3.2、局部断点

该断点可以影响特定的请求,方便调试

操作(使用命令)

image-20230624230311112

请求前断点
bpu login   		-- 请求的url中有login的会打断点

bpu					-- 取消断点

响应后断点
bpafter login		-- 请求的url中有login的会打断点

bpafter				-- 取消断点
4.4、弱网测试

即模拟网络环境差进行测试

操作

配置之后,点击Rules→performance→Simulate Modem Speeds启动即可

image-20230624233612096

6、app抓包

第一步:手机和电脑需要在同一局域网下

​ 方法一:手机和电脑连接同一个wifi

​ 方法二:电脑通过网线连接到无线路由,手机连接这个无线路由的wifi

​ 方式三:电脑使用无线网卡,开热点,手机连这个热点

第二步:配置

移动端设置手动代理

移动端的主机名填写连接的电脑的IP(可使用fiddler的Online功能查看)
移动端的端口号填写fiddler监听的端口号

第三步:勾选Allow remote computers to connect

image-20230625090453024

第四步:使用移动端的浏览器,进入http://电脑IP:fiddler监听的端口下载证书

下载fiddler的证书

第五步:安装证书(以个人手机为例:红米 note30至尊版,路径:设置→安全→更多安全设置→加密与凭据→安装证书→证书:找到下载的证书)

二、总结 

PS:这里分享一套软件测试的自学教程合集。对于在测试行业发展的小伙伴们来说应该会很有帮助。除了基础入门的资源,博主也收集不少进阶自动化的资源,从理论到实战,知行合一才能真正的掌握。全套内容已经打包到网盘,内容总量接近500个G。如需要软件测试学习资料,关注公众号(互联网杂货铺),后台回复1,整理不易,给个关注点个赞吧,谢谢各位大佬!

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/122034.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

论文速览 | TRS 2023: 使用合成微多普勒频谱进行城市鸟类和无人机分类

注1:本文系“最新论文速览”系列之一,致力于简洁清晰地介绍、解读最新的顶会/顶刊论文 论文速览 | TRS 2023: Urban Bird-Drone Classification with Synthetic Micro-Doppler Spectrograms 原始论文:D. White, M. Jahangir, C. J. Baker and M. Antoniou, “Urban Bird-Drone…

IBM Qiskit量子机器学习速成(一)

声明:本篇笔记基于IBM Qiskit量子机器学习教程的第一节,中文版译文详见:https://blog.csdn.net/qq_33943772/article/details/129860346?spm1001.2014.3001.5501 概述 首先导入关键的包 from qiskit import QuantumCircuit from qiskit.u…

文心一言 VS 讯飞星火 VS chatgpt (131)-- 算法导论11.2 3题

三、用go语言,Marley 教授做了这样一个假设,即如果将链模式改动一下,使得每个链表都能保持已排好序的顺序,散列的性能就可以有较大的提高。Marley 教授的改动对成功查找、不成功查找、插入和删除操作的运行时间有何影响? 文心一…

助力青少年学习,亚马逊云科技2024年全球人工智能和机器学习奖学金计划正式启动

云未来将以何种方式发展?方向握在意气风发的少年们手中。近日,亚马逊云科技全球人工智能和机器学习(AI和ML)奖学金计划在中国区的首次颁奖以及2024年启动仪式在北京中学正式举行,有45名学子凭借杰出的学业成绩、对人工…

打开pr提示找不到vcomp100.dll无法继续执行代码怎么办?5种dll问题解决方案全解析

vcomp100.dll是一个由Microsoft开发的动态链接库(DLL)文件,它对于许多基于图形的应用程序(如Photoshop)和多个游戏(如《巫师3》)至关重要。以下是关于vcomp100.dll的属性介绍以及找不到vcomp100…

Qt工程打包工具 windeployqt 的用法

1.复制工程下的“Debug”或者“Release”文件夹到你喜欢的路径,例如:D:\QT_out\ 2.在操作系统“开始”选项找到“Qt”文件夹,打开“Qt 5.15.2(MSVC 2019 64-bit)” 重点: 这里要注意的是,一定…

TSINGSEE智慧冶金工厂可视化AI视频智能监管方案,助力安全生产

一、背景与需求 有色金属冶炼工艺复杂,推进互联网、大数据、人工智能、5G、边缘计算、虚拟现实等前沿技术在有色冶炼工厂的应用,建成全流程综合集成信息管控平台、实现全要素数据可视化在线监控,已经成为当前冶金企业升级转型的主要建设目标…

2023年亚太杯APMCM数学建模大赛ABC题辅导及组队

2023年亚太杯APMCM数学建模大赛 ABC题 一元线性回归分析类 回归分析(Regression Analysis)是确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法。   – 按涉及变量个数划分   • 一元回归分析   • 多元回归分析   – 按自变量和因变量之间关…

BSP-STM32移植FreeRTOS

在stm32裸机工程中的Middlewares目录添加freeRtos源码 在裸机工程中的main中调用freertos接口

什么是数据库?数据库有哪些基本分类和主要特点?

数据库是以某种有组织的方式存储的数据集合。本文从数据库的基本概念出发,详细解读了数据库的主要类别和基本特点,并就大模型时代备受瞩目的数据库类型——向量数据库进行了深度剖析,供大家在了解数据库领域的基本概念时起到一点参考作用。 …

c#装饰器模式详解

基础介绍: 动态地给一个对象添加一些额外的职责。适用于需要扩展一个类的功能,或给一个类添加多个变化的情况。 装饰器,顾名思义就是在原有基础上添加一些功能。 大家都只知道如果想单纯的给原有类增加一些功能,可以直接继续该类生…

“Python+”集成技术高光谱遥感数据处理与机器学习深度

高光谱遥感数据处理的基础、python开发基础、机器学习和应用实践。重点解释高光谱数据处理所涉及的基本概念和理论,旨在帮助学员深入理解科学原理。结合Python编程工具,专注于解决高光谱数据读取、数据预处理、高光谱数据机器学习等技术难题,…

[Java/力扣160]相交链表

这道题的关键是,使两个链表上的指针同时到达相交点处 方法一:分别遍历两个链表,得到其长度。然后先让较长的链表上的指针走“两链表长度之差”。然后两指针分别一步一步走,就能同时到达相交点处。 方法二:让 p1 遍历…

Elasticsearch:ES|QL 的限制

尽管 ES|QL 带来性能及使用上的便捷,在实际的使用中,它还是有一些限制。在今天的文章中,我们来列举它的一些限制。 结果集大小限制 默认情况下,ES|QL 查询最多返回 500 行。 你可以使用 LIMIT 命令将行数增加到最多 10,000 行。 …

小时候画在手腕上的表,我用全志R128让他真正动了起来

小时候,我们总是充满想象力和创造力。 在那个年龄,我们没有真正的手表,但我们总是喜欢在纸上画出自己的手表,仿佛它真的能告诉我们时间。 为了弥补童年的遗憾,作者找到了一个智能手表的开源项目——NWatch&#xff0c…

JAVA微信端医院3D智能导诊系统源码

医院智能导诊系统利用高科技的信息化手段,优化就医流程。让广大患者有序、轻松就医,提升医疗服务水平。 随着人工智能技术的快速发展,语音识别与自然语言理解技术的成熟应用,基于人工智能的智能导诊导医逐渐出现在患者的生活视角中…

AlGaN/GaN HEMT 中缓冲区相关电流崩溃的缓冲区电位模拟表征

标题:Characterization of Buffer-Related Current Collapse by Buffer Potential Simulation in AlGaN/GaN HEMTs 来源:IEEE TRANSACTIONS ON ELECTRON DEVICES (18年) 摘要 - 在本文中,通过使用脉冲 I-V 测量和二维漂移扩散模拟研究了 Al…

PCA9535模块移植

在虚拟机环境里面找到内核文件 更改需要的信息 比如内核设备名称与设备树的名称是否一样 如有需要添加的应用程序 也需要添加进去 根据实际情况来 更改设备名称 还有注意的 比如中断号 根据硬件信息本次中断号为32 所以所有的设备树文件中断号都改为32 现在准备编写驱动文…

动态内存管理(上)

目录 为什么要有动态内存分配malloc和freemallocfree calloc和realloccallocrealloc 感谢各位大佬对我的支持,如果我的文章对你有用,欢迎点击以下链接 🐒🐒🐒 个人主页 🥸🥸🥸 C语言 🐿️&…

卷积神经网络中 6 种经典卷积操作

深度学习的模型大致可以分为两类,一类是卷积神经网络,另外一类循环神经网络,在计算机视觉领域应用最多的就是卷积神经网络(CNN)。CNN在图像分类、对象检测、语义分割等经典的视觉任务中表现出色,因此也早就…