前後端聯調之Fiddler工具--to前端to測試to後端

xcz426發表於2017-09-19

前言

現在的大型專案基本前後端分離;前端不僅僅只是負責介面,互動了;需要做的工作越來越多,但是都離不開和各個部門的溝通協作,這樣才能高效率;最為密切的就是後端了,今天就簡單的分享下在專案實戰過程中用到的利器--fiddle工具;

不就是fiddle嘛,抓包工具嘛,NO,NO,NO......

Fiddler是最強大最好用的Web除錯工具之一,它能記錄所有客戶端和伺服器的http和https請求,允許你監視,設定斷點,甚至修改輸入輸出資料,Fiddler包含了一個強大的基於事件指令碼的子系統,並且能使用.net語言進行擴充套件

你對HTTP 協議越瞭解, 你就能越掌握Fiddler的使用方法. 你越使用Fiddler,就越能幫助你瞭解HTTP協議.


輕描淡寫-介紹下fiddle

先貼一個官網地址:fiddle官網 至於怎麼形容他: The free web debugging proxy for any browser, system or platform 抓包、除錯、代理、各種很強大的功能

  1. 不費話了,開始幹活 下載,一路next就可以安裝好;ok,將看到這個介面

前後端聯調之Fiddler工具--to前端to測試to後端
左邊列表就是捕獲到的所有請求,不妨隨便百度一下,就能看到你百度的請求;

這個是我點選百度搜尋框,觸發的請求,右邊webform中可以看到這個請求的內容,下邊的JSON是伺服器返回的內容;很清晰,一目瞭然。

fiddler工具的基本使用可以參考官網文件或者慕課網有視訊教程;

只有我才能帶領你們走向勝利

To 測試妹子

對於測試來說,如上所示,分析請求,定位是前端還是後端的問題,檢驗介面與資料是否一致,有時候出現神奇問題,要麼是邏輯問題,要麼是介面和資料不一致造成的,精準定位問題,精準發鍋;

To 大前端

fiddler不只是具有簡單的抓包功能,在他的社群有很多的外掛,使他的能力發揮到極致; 詳細介紹下專案中常常使用的一個神器 Willow--Fiddler的外掛,提供重定向和host主機等功能,三秒鐘解決聯調、跨域問題,沒錯就是三秒. 貼一個下載地址: fiddler2 + willow 下載 密碼:o3lg fiddler4 + willow 下載 密碼:kf8p 安裝fiddler後安裝外掛 willow,willow如果安裝失敗,請嘗試右鍵使用 管理員身份開啟;安裝好後會在右邊看到一個綠色的小圖示,ok,點選他;

前後端聯調之Fiddler工具--to前端to測試to後端

核心內容


問題現狀: 我們的專案通常開發時都跑在本地服務下,一般是127.0.0.1:8080,如果我們希望原生程式碼的服務能夠正常訪問後端,或者訪問到測試機的真實資料,這就跨域了,因為本地和後端或者測試的都不在一個域名下,是無法訪問到資料的,通常的做法是啟動一個Nginx服務來進行轉發,這一個過程很麻煩,配置改來改去,而且如果要做到,程式碼修改實時看到效果,那就更復雜了。。。

**解決方案: ** 我的做法是: 將本地服務127.0.0.1代理到某個域名比如www.cloud.com,這時候訪問這個域名就能看到自己的專案了,這個域名下也是木有後端或者測試機的介面的,怎麼辦了,繼續代理轉發,將域名下所有的介面代理到真實的IP下,比如後端或者測試機介面的服務在 10.50.12.24:8088下,那我們就將www.cloud.com/order[order是後端介面固定的專案名,每個介面都在這個目錄下]指向10.50.12.24:8088下,完美解決;

前後端聯調之Fiddler工具--to前端to測試to後端
順著這個思路3步解決,

  1. 在willow中新增專案快捷鍵ctrl+p
  2. 新增host代理ctrl + o;
  3. 新增指向add exten ctrl + n;

不懂的童鞋看圖

圖一:

前後端聯調之Fiddler工具--to前端to測試to後端
圖二:
前後端聯調之Fiddler工具--to前端to測試to後端
好了可以開心的聯調程式碼了; ps: 這個checkbox框框表示是否啟用,如果想去掉,點掉就好了;比手動去修改host方便多了;

To 後端

後端大俠有時候想這麼幹,用測試機的前端程式碼,來訪問自己本地的服務,這樣就不用浪費前端童鞋的資源了,測試機上自己測試; 這個步奏其實就是上面的逆過程,簡單多了,測試機的前端程式碼自然指向測試機的後端程式碼,使用上面思路的第三步;新增指向,指向本機,這裡要注意兩個點:

  1. 直接代理介面www.cloud.com/order --> 本地服務+埠
  2. 如果是https的,需要後端給tomcat配置https證書

介紹就先到這裡了,更多使用技巧,後續在更新。。。 第一次寫分享,歡迎 issues,如果覺得有幫助點個贊

後記

後端某個功能bug,不斷地讓前端點選按鈕發請求,他來打斷點,有時候我比較懶,就讓後端自己點,後端如何訪問前端開發機電腦上的程式碼,來訪問自己電腦上的後端服務? 這個問題大家可以思考下,下期分享。。。

相關文章