当前位置: 首页 > news >正文

抓包工具fiddler的基础知识

目录

简介

1、作用

2、使用场景

3、http报文分析

     3.1、请求报文

     3.2、响应报文

4、介绍fiddler界面功能

     4.1、AutoResponder(自动响应器)

     4.2、Composer(设计请求)

     4.3、断点

     4.4、弱网测试

5、app抓包


简介

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

1、作用

  • 监控浏览器所有的http/https流量
  • 查看、分析请求内容细节
  • 伪造客户端请求和服务器请求
  • 测试网站的性能
  • 解密https的web会话
  • 全局、局部断电功能
  • 第三方插件

2、使用场景

  • 接口调试、接口测试、线上环境调试、web性能分析

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

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

5、app抓包

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

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

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

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

第二步:配置

移动端设置手动代理

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

第三步:勾选Allow remote computers to connect

image-20230625090453024

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

下载fiddler的证书

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

fiddler安装证书



以下是我收集到的比较好的学习教程资源,虽然不是什么很值钱的东西,如果你刚好需要,可以评论区,留言【777】直接拿走就好了

各位想获取资料的朋友请点赞 + 评论 + 收藏,三连!

三连之后我会在评论区挨个私信发给你们~

相关文章:

抓包工具fiddler的基础知识

目录 简介 1、作用 2、使用场景 3、http报文分析 3.1、请求报文 3.2、响应报文 4、介绍fiddler界面功能 4.1、AutoResponder(自动响应器) 4.2、Composer(设计请求) 4.3、断点 4.4、弱网测试 5、app抓包 简介 fiddler是位于客户端和服务端之间的http代理 1、作用 监控浏…...

监控基本概念

监控:这个词在不同的上下文中有不同的含义,在讲到监控MySQL或者监控Redis时,这里只涉及数据采集和可视化,不涉及告警引擎和事件处理。要是监控系统的话,不但包括数据采集和可视化,而且也包括告警和事件发送…...

【数据结构】 七大排序详解(壹)——直接插入排序、希尔排序、选择排序、堆排序

文章目录 🍀排序的概念及引用🐱‍👤排序的概念🐱‍👓排序运用🐱‍🐉常见的排序算法 🌴插入排序🎋基本思想:🛫直接插入排序📌算法步骤&…...

【Linux】高级IO --- Reactor网络IO设计模式

人其实很难抵制诱惑,人只能远离诱惑,所以千万不要高看自己的定力。 文章目录 一、LT和ET模式1.理解LT和ET的工作原理2.通过代码来观察LT和ET工作模式的不同3.ET模式高效的原因(fd必须是非阻塞的)4.LT和ET模式使用时的读取方式 二…...

Agisoft Metashape相机标定笔记

Lens Calibration(镜头标定) 使用Metashape进行自动相机标定是可能的。Metashape使用LCD显示屏作为标定目标(可选:使用打印的棋盘格图案,但需保证它是平坦的且单元格是正方形)。 相机标定步骤支持全相机标定矩阵的估计&#xff…...

vue-cropper在ie11下选择本地图片后,无显示、拒绝访问的问题

问题:vue-cropper在ie11下选择本地图片后,网页上并未显示出图片,打开F12有报错:拒绝访问blabla的。但是在chrome下一切正常。 开发环境:node14.17.5 , vue2 , vue-cropper0.6.2 , macOS big sur 11.4(M1). 解决办法&…...

Excel VSTO开发11-自定义菜单项

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 11 自定义菜单项 自定义菜单项可以在插件启动时候添加,即增加到ThisAddIn_Startup() 内。 下面以具体代码说明&#x…...

stm32之30.DMA

DMA(硬件加速方法)一般用于帮运比较大的数据(如:摄像头数据图像传输),寄存器-》DMA-》RAM 或者 RAM-》DMA-》寄存器提高CPU的工作效率 源码-- #include "myhead.h" #include "adc.h"#…...

【LeetCode75】第四十九题 数组中的第K个最大元素

目录 题目: 示例: 分析: 代码: 题目: 示例: 分析: 题目很简单,就是给我们一个数组,让我们返回第K大的元素。 那么很直观的一个做法就是我们直接对数组进行降序排序…...

嵌入式面试笔试刷题(day14)

文章目录 前言一、进程控制块1.PCB控制块的作用2.PCB的存储位置 二、进程的三级映射三、return , exit, pthread_exit四、pthread_join作用五、互斥锁和信号量的区别六、怎么判断链表是否有环总结 前言 本篇文章继续我们的刷题之路。 一、进程控制块 这里只讲解进程的PCB控制…...

好用免费的Chat GPT(亲测有用)

1、MindLink麦灵 MindLink麦灵 点进登录后 普通用户可以提问100次 2、你问我答 你问我答 无限次数的。 3、灵感 灵感 点击链接后会提示你如何下载使用。 这个有win版和mac版,点击登陆后,每日都会有30次GPT3/3.5的提问。 4、WebTab 在浏览器插件中…...

SpringBoot项目--电脑商城【上传头像】

一、易错点 1.错误写法: 把文件存到数据库中,需要图片时访问数据库,数据库将文件解析为字节流返回,最后写到本地的某一个文件.这种方法太耗费资源和时间了 2.正确写法: 将对应的文件保存在操作系统上,然后再把这个文件路径记录下来,因为在记录路径的…...

优化SOCKS5的方法

在今天的互联网世界中,保护个人隐私和提升网络速度至关重要。作为一种常用的代理协议,SOCKS5代理服务器不仅可以保护您的隐私,还可以实现更快速的网络访问。本文将为您介绍一些优化SOCKS5代理服务器的方法,以提高网络速度和安全性…...

使用 HelpLook Chatbot,让AI聊天机器人变成销售经理

想要增强AI聊天机器人销售技巧的话,我们需要一个强大的搭建工具来帮助我们增加客户互动,通过很多的客户互动数据来支撑和锻炼我们的AI聊天机器人。在本篇文章中,looklook将会系统地来说说该如何定制聊天机器人的行为。 使用AI聊天机器人的好处…...

MT9700 80mΩ,可调快速响应限流配电开关芯片

MT9700 80mΩ&#xff0c;可调快速响应限流配电开关芯片 特征 符合USB规范 集成80mΩ电源MOSFET 低电源电流 15μA典型开启状态 1μA典型关闭状态 宽输入电压Range&#xff1a;2.4V到5.5V 快速瞬态响应&#xff1a;<2μs 反向电流流阻塞 热关机保护 热插件应…...

RabbitMQ之延迟队列

RabbitMQ之延迟队列 1. 延迟队列概念2. 延迟队列使用场景3. RabbitMQ 中的 TTL3.1 消息设置 TTL3.2 队列设置 TTL3.3 两者的区别 4. 整合 SpringBoot4.1 创建项目4.2 添加依赖4.3 修改配置文件4.4 添加 Swagger 配置类 5. 队列 TTL5.1 代码架构图5.2 配置文件类代码5.3 消息生产…...

k8s部署手册-v06

一、基础配置 1.修改主机名 hostnamectl set-hostname k8s-master01 hostnamectl set-hostname k8s-master02 hostnamectl set-hostname k8s-master03 hostnamectl set-hostname k8s-node01 hostnamectl set-hostname k8s-node022.添加 主机名与IP地址解析 cat > /etc/ho…...

Qt 5.15集成Crypto++ 8.7.0(MSVC 2019)笔记

一、背景 笔者已介绍过在Qt 5.15.x中使用MinGW&#xff08;8.10版本&#xff09;编译并集成Crypto 8.7.0。 但是该编译出来的库&#xff08;.a和.dll&#xff09;不适用MSVC&#xff08;2019版本&#xff09;构建环境&#xff0c;需要重新编译&#xff08;.lib或和.dll&#xf…...

LeetCode——贪心篇(一)

刷题顺序及思路来源于代码随想录&#xff0c;网站地址&#xff1a;https://programmercarl.com 目录 455. 分发饼干 376. 摆动序列 53. 最大子数组和 122. 买卖股票的最佳时机 II 55. 跳跃游戏 45. 跳跃游戏 II 1005. K 次取反后最大化的数组和 455. 分发饼干 假设你是…...

2023高教社杯 国赛数学建模C题思路 - 蔬菜类商品的自动定价与补货决策

1 赛题 在生鲜商超中&#xff0c;一般蔬菜类商品的保鲜期都比较短&#xff0c;且品相随销售时间的增加而变差&#xff0c; 大部分品种如当日未售出&#xff0c;隔日就无法再售。因此&#xff0c; 商超通常会根据各商品的历史销售和需 求情况每天进行补货。 由于商超销售的蔬菜…...

【理解线性代数】(四)线性运算的推广与矩阵基础

1. 数值加法和乘法 数值加法与乘法&#xff0c;是小学数学课程中的基本数学运算。例如&#xff1a; 加法&#xff1a;112 乘法&#xff1a;2*24 在这个知识层次下&#xff0c;运算的基本单位是数字。 2. 从数值到向量 数值加法&#xff0c;可以看作一维空间中的向量加法&…...

C# 什么是继承和派生

C# 什么是继承和派生 在 C# 中&#xff0c;继承&#xff08;Inheritance&#xff09;是一种机制&#xff0c;它允许一个类&#xff08;子类&#xff09;从另一个类&#xff08;父类&#xff09;中继承属性和方法。这种关系使得子类可以重用父类的代码&#xff0c;同时可以在子…...

无涯教程-JavaScript - HEX2BIN函数

描述 HEX2BIN函数将十六进制数转换为二进制数。 语法 HEX2BIN (number, [places])争论 Argument描述Required/Optionalnumber 您要转换的十六进制数。 数字不能超过10个字符(40位)。数字的最高有效位是符号位(从右数第40位)。其余的39位是幅度位。 负数使用二进制补码表示。…...

前端面试0906

// 请给出输出结果 function foo(){ console.log(a); } function bar(){ var a 3; console.log(this.a); foo(); } var a 2; bar(); 2 2 // 请从下面的问题中挑选3道进行回答 1. 防抖和节流分别是什么&#xff0c;一般用在什么场景&#xff1f; 防抖&#xff08;Debounc…...

OceanBase社区版4.x核心技术解密

数字化时代&#xff0c;各行各业的数据量呈现爆发式增长&#xff0c;对于海量数据价值的挖掘和应用&#xff0c;正成为推动创新的主要力量&#xff0c;与此同时&#xff0c;数据计算复杂度正在提升。在此背景下&#xff0c;对于数据处理的基石数据库而言&#xff0c;正面临市场…...

快速安装k8s

RKE安装方式 官方文章资源地址 https://rke.docs.rancher.com/installation rke工具下载地址&#xff08;arm,amd,windows都有&#xff09; https://github.com/rancher/rke/releases x86的用amd64下载rke工具 https://github.com/rancher/rke/releases/download/v1.4.8/rke_li…...

[FFmpeg] 常用ffmpeg命令

去水印 ffmpeg -i water.jpeg -strict -2 -vf delogox300:y250:w56:h18:show0 no_water.jpeg 打时间戳 ffmpeg -i perf_60Hz_Raw.mp4 -vf "drawtextfontsize160:fontcolorred:text%{pts\:hms}" -c:v libx264 -an -f mp4 perf_output.mp4 -y ffmpeg -i perf_8k.mp4 -v…...

代码随想录训练营第五十七天|647. 回文子串、516.最长回文子序列

647. 回文子串 题目链接/文章讲解/视频讲解&#xff1a;代码随想录 1.代码展示 //647.回文子串 int countSubstrings(string s) {//step1 构建dp数组&#xff0c;明确dp数组的含义&#xff0c;dp[i][j]的含义是在下标为i和j区间内的字串是否为回文串vector<vector<bool&…...

对线程池设置做压测

线程池代码 Configuration public class ThreadPoolConfig {// 核心线程池大小private int corePoolSize 24;// 最大可创建的线程数private int maxPoolSize 25;// 队列最大长度private int queueCapacity 100;// 线程池维护线程所允许的空闲时间private int keepAliveSeco…...

【网络通信 -- WebRTC】项目实战记录 -- mediasoup android 适配 webrtc m94

【网络通信 -- WebRTC】项目实战记录 -- mediasoup android 适配 webrtc m94 【1】下载并配置 depot_tools 下载 depot_tools git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git编辑 ~/.bashrc 将 depot_tools 添加到路径中 vim ~/.bashrc export…...

日本室内设计官网/英文seo外链发布工具

如果想从头学起Cypress&#xff0c;可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html 作用 起别名以供以后使用可在 cy.get() 或 cy.wait() 命令中引用别名 语法格式 .as(aliasName)正确格式 // 给第一个 li 元素起别名 cy.get(.main-nav).find(l…...

做网站开始要注意什么/一个新公众号怎么吸粉

android 4.0源码已经出来很久了。。网上也有下载的。但是我一直想自己下载一次不想用网上的现成的东东。 今天终于忍不住了&#xff0c;创了一个linux虚拟机。开始下载android 4.0源码了。 下载需要linux环境。可以选择装个ubuntu系统&#xff0c;也可以用VMware建个虚拟的ubun…...

域名备案要先做网站的吗/企业建站都有什么网站

我对python了解不多&#xff0c;但似乎可以接收JSON格式的数据(参见Python - Parsing JSON Data Set)SAS提供了一个免费的工具&#xff0c;可以轻松地以JSON格式发送数据集(它是为与javascript通信而构建的&#xff0c;但在您的情况下应该也能很好地工作)。.sas文件可以在这里下…...

做网站不用tomcat行吗/宁波seo外包推广

第1章介绍 1. 为什么要进行视频压缩&#xff1f; 未经压缩的数字视频的数据量巨大 存储困难 一张DVD只能存储几秒钟的未压缩数字视频。 传输困难 1兆的带宽传输一秒的数字电视视频需要大约4分钟。2. 为什么可以压缩 去除冗余信息 空间冗余&#xff1a;图像相邻像素之间有较强…...

没网站可以做seo吗/东莞网络营销信息推荐

文章作者&#xff1a;Tyan 博客&#xff1a;noahsnail.com | CSDN | 简书 1. Description 2. Solution **解析&#xff1a;**Version 1&#xff0c;先排序&#xff0c;再判断其是否是算术(等差)数组。Version 2以空间换时间&#xff0c;找出最大最小值&#xff0c;最大最…...

斗门网站建设/关键词排名优化公司哪家好

1. 为什么需要LSTM 普通RNN的信息不能长久传播&#xff08;存在于理论上&#xff09;。 &#xff0c;输入x会稀释掉状态s&#xff0c;故其信息不能长久的传播。 2. LSTM中引入了什么 2.1 选择性机制 选择性输入选择性遗忘选择性输出 2.2 实现选择性机制的方法 2.2.1 门——…...