Fiddler筆記

文章目錄

  • 一、與F12對比
  • 二、核心作用
  • 三、原理
  • 四、配置
      • 1.Rules:
      • 2.配置證書抓取https包
      • 3.設置過濾器
      • 4、抓取App包
  • 五、模擬弱網測試
  • 六、調試
      • 1.線上調試
      • 2.斷點調試
  • 七、理論
      • 1.四要素
      • 2.如何定位前后端bug


一、與F12對比

相同點: 都可以對http和https請求進行抓包分析。
不同點: F12無法抓取app端的請求、無法修改請求數據,而fiddler可以。

二、核心作用

1.接口測試: 發送自定義的請求、模擬小型接口測試。
2.定位前后端bug: 抓取協議包、前后端聯調。
3.構建模擬測試場景: 數據篡改、重定向。
4.弱網測試: 模擬限速操作、弱網、斷網。
5.前端性能分析及優化

三、原理

是一個代理服務器,其工作原理是通過代理服務器機制來截獲和轉發客戶端與服務器之間的網絡請求和響應。Fiddler使用代理地址127.0.0.1和默認端口8888,當客戶端(如瀏覽器)發送網絡請求時,這些請求首先被Fiddler截獲,而不是直接發送到目標服務器。?

四、配置

1.Rules:

(1)隱藏不需要的數據包: 勾選Hide CONNECTs 和Hide 304s。
(2)進行斷點調試: Automatic Breakpoints。
(3)弱網測試設置: Customize Rules…
在這里插入圖片描述

2.配置證書抓取https包

(1).打開Tools下options中https選項: 勾選Capture HTTPS CONNECTS(捕獲https連接)、Decrypt HTTPS traffic(解密https通過)、Ignore server…。

在這里插入圖片描述

(2)在connections里面設置配置信息: 勾選Allow remote computers to connect等。
在這里插入圖片描述

(3)重置更新證書:
點擊Option的HTTPS中Actions后,進行一直下一步操作。

3.設置過濾器

作用: 只抓取需要的數據包內容
在這里插入圖片描述

4、抓取App包

1.打開模擬器—>設置—>網絡—>設置代理服務主機名(在命令提示符中輸入ipconfig)和端口號—>在模擬器中安裝和fiddler同樣的證書。
2.發送請求。

五、模擬弱網測試

給代理設置不同的網絡情況。
(1)設置網絡傳輸值: 在Customize Rules…中找到下列代碼進行更改。

if(m_SimulateModem){// Delay sends by 300ms per KB uploaded.oSession["request-trickle-delay"] ="300";// Delay sends by 150ms per KB downloaded.oSession["response-trickle-delay"] ="150";
}

2G:

oSession["request-trickle-delay"] ="500";
oSession["response-trickle-delay"] ="400";

3G:

oSession["request-trickle-delay"] ="100";
oSession["response-trickle-delay"] ="100";

4G:

oSession["request-trickle-delay"] ="15";
oSession["response-trickle-delay"] ="10";

改完后記得保存。

(2)設置:
在Rules下Performance中,點擊后勾選Simulate Modem Speeds。
去掉勾選即可關閉。
在這里插入圖片描述

六、調試

1.線上調試

在這里插入圖片描述
1.復制響應信息中SyntaxView的內容到,XXX.html的新建文件中。
2.右鍵編輯XXX.html。
3.在fiddler中,選中AutoResponder,如上截圖進行操作。
4.刷新網頁界面,可看到內容已經修改。

2.斷點調試

1.查看登錄的webforms請求參數信息。
在這里插入圖片描述
2.打開斷點調試(Automatic Breakpints)
3.在請求之前修改參數信息進行發送。
攔截請求成功截圖(可修改Body內容并查看響應信息):
在這里插入圖片描述

七、理論

1.四要素

請求四要素: 請求頭、請求路徑、請求方式、請求參數。
響應四要素: 響應頭、響應碼、響應信息、響應數據。

2.如何定位前后端bug

理論上: 如果請求參數有問題就是前端bug,如果請求參數沒有問題、返回數據有問題,那么就是后端bug(沒有詳細接口文檔情況下,是無法判斷接口參數是否有問題)。
實際上: 查看響應結果,查看頁面錯誤信息,結合需求文檔、日志信息綜合進行對比。
后端bug:異常類信息。

內容來自b站碼尚軟件平臺 、百度等,有興趣可以去b站自行了解。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/895830.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/895830.shtml
英文地址,請注明出處:http://en.pswp.cn/news/895830.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Python爬蟲-貓眼電影的影院數據

前言 本文是該專欄的第46篇,后面會持續分享python爬蟲干貨知識,記得關注。 本文筆者以貓眼電影為例子,獲取貓眼的影院相關數據。 廢話不多說,具體實現思路和詳細邏輯,筆者將在正文結合完整代碼進行詳細介紹。接下來,跟著筆者直接往下看正文詳細內容。(附帶完整代碼) …

linux筆記:shell中的while、if、for語句

在Udig軟件的啟動腳本中使用了while循環、if語句、for循環,其他內容基本都是變量的定義,所以嘗試弄懂腳本中這三部分內容,了解腳本執行過程。 (1)while循環 while do循環內容如下所示,在循環中還用了expr…

利用分治策略優化快速排序

1. 基本思想 分治快速排序(Quick Sort)是一種基于分治法的排序算法,采用遞歸的方式將一個數組分割成小的子數組,并通過交換元素來使得每個子數組元素按照特定順序排列,最終將整個數組排序。 快速排序的基本步驟&#…

從零到一實現微信小程序計劃時鐘:完整教程

在本教程中,我們將一起實現一個微信小程序——計劃時鐘。這個小程序的核心功能是幫助用戶添加任務、設置任務的時間范圍,并且能夠刪除和查看已添加的任務。通過以下步驟,我們將帶你從零開始實現一個具有基本功能的微信小程序計劃時鐘。 項目…

idea日常報錯之UTF-8不可映射的字符

目錄 一、UTF-8不可映射的字符的解決 1、出現這種報錯的情形 2、具體解決辦法 前言: 在我們日常代碼編寫的時候可能會遇到各式各樣的錯誤,有時候并不是你改動了代碼,而是莫名其妙就出現的報錯,今天我就遇到一個在maven編譯的時候…

人工智能技術-基于長短期記憶(LSTM)網絡在交通流量預測中的應用

人工智能技術-基于長短期記憶(LSTM)網絡在交通流量預測中的應用 基于人工智能的智能交通管理系統 隨著城市化進程的加快,交通問題日益嚴峻。為了解決交通擁堵、減少交通事故、提高交通管理效率,人工智能(AI&#xff…

HTTP FTP SMTP TELNET 應用協議

1. 標準和非標準的應用協議 標準應用協議: 由標準化組織(如 IETF,Internet Engineering Task Force)制定和維護,具有廣泛的通用性和互操作性。這些協議遵循嚴格的規范和標準,不同的實現之間可以很好地進行…

Matlab離線安裝硬件支持包的方法

想安裝支持樹莓派的包,但是發現通過matlab安裝需要續訂維護服務 可以通過離線的方式安裝。 1. 下載SupportSoftwareDownloader Support Software Downloader - MATLAB & Simulink 登錄賬號 選擇對應的版本 2. 選擇要安裝的包 3.將下載的包copy到安裝目錄下 …

Django REST Framework (DRF) 中用于構建 API 視圖類解析

Django REST Framework (DRF) 提供了豐富的視圖類,用于構建 API 視圖。這些視圖類可以分為以下幾類: 1. 基礎視圖類 這些是 DRF 中最基礎的視圖類,通常用于實現自定義邏輯。 常用類 APIView: 最基本的視圖類,所有其…

MyBatis攔截器終極指南:從原理到企業級實戰

在本篇文章中,我們將深入了解如何編寫一個 MyBatis 攔截器,并通過一個示例來展示如何在執行數據庫操作(如插入或更新)時,自動填充某些字段(例如 createdBy 和 updatedBy)信息。本文將詳細講解攔…

137,【4】 buuctf web [SCTF2019]Flag Shop

進入靶場 都點擊看看 發現點擊work會增加¥ 但肯定不能一直點下去 抓包看看 這看起來是一個 JWT(JSON Web Token)字符串。JWT 通常由三部分組成,通過點(.)分隔,分別是頭部(Header&…

twisted實現MMORPG 游戲數據庫操作封裝設計與實現

在設計 MMORPG(大規模多人在線角色扮演游戲)時,數據庫系統是游戲架構中至關重要的一部分。數據庫不僅承擔了游戲中各種數據(如玩家數據、物品數據、游戲世界狀態等)的存儲和管理任務,還必須高效地支持并發訪…

【R語言】聚類分析

聚類分析是一種常用的無監督學習方法,是將所觀測的事物或者指標進行分類的一種統計分析方法,其目的是通過辨認在某些特征上相似的事物,并將它們分成各種類別。R語言提供了多種聚類分析的方法和包。 方法優點缺點適用場景K-means計算效率高需…

超全Deepseek資料包,deepseek下載安裝部署提示詞及本地部署指南介紹

該資料包涵蓋了DeepSeek模型的下載、安裝、部署以及本地運行的詳細指南,適合希望在本地環境中高效運行DeepSeek模型的用戶。資料包不僅包括基礎的安裝步驟,還提供了68G多套獨立部署視頻教程教程,針對不同硬件配置的模型選擇建議,以…

Java Spring boot 篇:常用注解

Configuration 作用 Configuration 注解的核心作用是把一個類標記為 Spring 應用上下文里的配置類。配置類就像一個 Java 版的 XML 配置文件,能夠在其中定義 Bean 定義和 Bean 之間的依賴關系。當 Spring 容器啟動時,會掃描這些配置類,解析其…

在 Ubuntu 20.04 為 Clash Verge AppImage 創建桌面圖標教程

在 Ubuntu 20.04 為 AppImage 創建桌面圖標教程 一、準備工作 確保你已經下載了 xxxx.AppImage 文件,并且知道它所在的具體路徑。同時,你可以準備一個合適的圖標文件(.png 格式)用于代表該應用程序,如果沒有合適的圖…

【復現DeepSeek-R1之Open R1實戰】系列6:GRPO源碼逐行深度解析(上)

目錄 4 GRPO源碼分析4.1 數據類 GRPOScriptArguments4.2 系統提示字符串 SYSTEM_PROMPT4.3 獎勵函數4.3.1 accuracy_reward函數4.3.2 verify函數4.3.3 format_reward函數 4.4 將數據集格式化為對話形式4.5 初始化GRPO Trainer 【復現DeepSeek-R1之Open R1實戰】系列3&#xff1…

【雜談】加油!!!!

為了在三月底前系統準備Java后端開發的面試和筆試,以下是分階段的高效學習計劃: 一、知識體系構建(第1-2周) 核心基礎強化 Java基礎(每日1.5小時): 重點掌握:JVM內存模型&#xff0…

python旅游推薦系統+爬蟲+可視化(協同過濾算法)

??基于用戶的協同過濾算法 ??有后臺管理 ??2w多數據集 這個旅游數據分析推薦系統采用了Python語言、Django框架、MySQL數據庫、requests庫進行網絡爬蟲開發、機器學習中的協同過濾算法、ECharts數據可視化技術,以實現從網站抓取旅游數據、個性化推薦和直觀展…

HarmonyNext上傳用戶相冊圖片到服務器

圖片選擇就不用說了,直接用 無須申請權限 。 上傳圖片,步驟和android對比稍微有點復雜,可能是為了安全性考慮,需要將圖片先拷貝到緩存目錄下面,然后再上傳,當然你也可以轉成Base64,然后和服務…