介面測驗
Filddler基礎的使用
一、Fiddler
1.工具列中各個按鈕的含義

:配置windows中特定應用的抓包(默認抓取不到)
:添加備注資訊
:重新發起指定請求
:清空指定會話內容
:斷點放行
:模式切換
:相應資料解碼
:顯示會話數

:抓取指定行程發出的請求
:關鍵字查找
:保存當前的會話資料
:截圖+計時
:打開瀏覽器
:清空快取
:加密/解密
:浮窗顯示詳細內容
2.任務面板功能詳解

:fiddler腳本
:日志
:過濾規則配置
Use filters:啟用過濾規則
Hosts:
show only the following hosts 只展示指定的hosts
Hide the following hosts:隱藏指定的hosts
Flag the following hosts:標記指定的hosts
Clients process
Request headers
Response headers
Breakpoints
Response status code
Response content-type
:時間線
:會話資料統計
:請求+回應詳情


:模擬服務端回應
添加回應規則,抓取到的請求如果滿足已啟用規則,則會被fiddler攔截,并回傳規則中設定的相應內容(請求不會被發送服務器)
可以手動輸入規則內容,也可以直接從會話串列中拖拽到autoresponder中
Regex:使用正則運算式進行匹配
Exact:精確匹配
Method:匹配請求方法
Header:匹配請求頭
:模擬客戶端請求
可以手動輸入規則內容,也可以直接從會話串列中拖拽到composer中
添加規則后,點擊execute按鈕即可發送請求
:抓取移動端流量
3.斷點
在rules選單下選擇automatic breakpoints
(1)請求前斷點,選擇before request(快捷鍵F11)
請求發出后會被fiddler攔截(此時請求還未被發送到服務端),攔截后就可以修改請求內容,修改完成后點擊請求資訊視窗中的run to completion按鈕或工具列中的go按鈕即可放行(此時修改后的請求會被發送到服務端)
(2)回應后斷點,選擇after response(快捷鍵Alt+F11)
服務端回應請求后會被fiddler攔截(此時回應內容還未被發送到客戶端),攔截后就可以修改回應內容,修改完成后點擊回應資訊視窗中的run to completion按鈕或工具列中的go按鈕即可放行(此時修改后的回應資訊會被發送到服務端)
(3)關閉斷點功能,disabled(快捷鍵Shift+F11)
4.常用命令
(1)?+關鍵字,從protocol、host、url三個欄位中進行模糊匹配,高亮顯示匹配到的請求
(2)@+關鍵字,從host欄位中進行模糊匹配,高亮顯示匹配到的請求
(3)<+數字,與body的大小作比較,高亮顯示小于指定數字的請求
(4)>+數字,與body的大小作比較,高亮顯示大于指定數字的請求
(5)=+狀態碼,與result作比較,高亮顯示等于指定狀態碼的請求
(6)cls,清空當前會話串列中的所有請求
(7)dump,轉存當前會話串列的所有請求資料
(8)Select+空格+關鍵字,從content-type中進行模糊匹配,高亮顯示匹配到的請求
(9)start,開啟代理
(10)stop,關閉代理
(11)bpu+空格+關鍵字,從protocol、host、url三個欄位中進行模糊匹配,攔截匹配到的請求
(12)bpm/bpv+空格+method,攔截指定的方法的請求
(13)bps+空格+狀態碼,攔截指定回應狀態碼的請求
(14)bpafter+空格+關鍵字,從protocol、host、url三個欄位中進行模糊匹配,攔截匹配到的回應
(15)g/go,放行當前被攔截的請求或回應
(16)Alt+Q:游標定位到命令列的快捷鍵
5.Fiddler允許移動端抓包
(1)Tools--options--https:全部勾選
(2)Tools--options--connections:
勾選allow remote computers to connect
埠號默認:8888
(3)移動端和PC端在同一個網路下
(4)移動端設定代理ip為PC的ip,埠號為:8888(與fiddler中設定的埠號保持一致)
(5)如果要抓https的包,在移動端訪問: http://<pc端ip>:8888,下載證書安裝,并設定信任證書
(6)如果所有配置都已配好,還是無法正常抓包,可以查看移動設備型號是否需要額外配置
6.模擬弱網
(1)在FiddlerScript中搜索m_SimulateModem,修改上傳和下載的延遲時長,即可達到模擬弱網的目的
二、HTTP協議
-
超文本傳輸協議
-
查看網頁源代碼:滑鼠右鍵選擇'查看網頁源代碼'
常見標簽:
input img i a button link span -
http的特點
(1) 無連接(不是不連接,是不保持連接)
(2) 媒體獨立(約定的 mime-type)
(3) 無狀態(沒有記憶力)
-
http和tcp /ip的區別
(1) tcp協議傳輸資料,HTTP進行解釋
(2) http是無連接,tcp是有連接
(3) http是無狀態,tcp是有狀態
(4) http是應用層協議,tcp是傳輸層協議
-
http請求內容
(1) request
Request method: 請求方法 (get post)
Request URL: 請求地址
Request headers: 請求頭
-
Content-type:指定接收資料的格式Accept:指定可接受資料型別
Accept-language:指定客戶端可接受語言型別 -
Accept-length:指定客戶端可接受的資料長度
-
Accept-encoding:指定客戶端可接受的編碼格式
-
Cookies:存放在客戶端本地的身份認證資訊
-
Host:服務器主機地址
-
User-agent:客戶端系統和系統版本,瀏覽器和瀏覽器版本
-
Referer:請求是從哪里發出來的,可以用來鑒別爬蟲資料
Request body: 請求體(post 要傳的引數一般放在body中進行傳輸)
- Application/x-www-form-urlencoded:表單資料
- Mutipart-form:表單資料(可傳檔案),
(2) response
Response status: 回應狀態碼
Response headers: 回應頭
Response body: 回應體
(3)
常見請求方法get:從服務器獲取資訊
? 傳參方式:一般直接在url上面跟要傳的引數,引數和路徑之間用?間隔,不同引數之間用&間隔
post:修改服務器的資訊? 傳參方式:一般在body 中跟要傳的引數
? form-data:表單形式,既可以傳文本,也可以傳檔案
? **x-www-form-urlencoded:表單形式,只能傳文本,不能傳檔案 **? Raw:支持多種格式:
text:純文本
javascript:js腳本
json:按照json資料格式的要求傳參? html:網頁源代碼
? xml:xml組態檔
binary:二進制檔案
put:更新服務器的檔案資訊
patch:更新服務器檔案的區域資訊
delete:洗掉指定頁面
head: 獲取回應頭,無回應體
Connect:預留給代理服務器用來建立連接管道
Options:允許查看服務端性能
Trace:回顯服務器的請求,用于測驗診斷
資料>>>>
https://tool.oschina.net/commons?type=5
https://baike.baidu.com/item/http/243074?fr=aladdin#2 ?
https://germey.gitbooks.io/python3webspider/content/2.1-HTTP 基本原理.html
-
三、Json資料
1.json(javascript object notation------js物件表示法) 是一種輕量級資料交換格式,獨立于語言和平臺.
2.json語法規則
(1)鍵值對(同一層中key不能重復)
(2)鍵和值之間用冒號間隔
(3)每組資料間用逗號隔開
(4)值可以是:字串,數字,陣列,物件,bool值,null
四、postman
1.鑒權
(1)鑒權方式:basic-auth(賬號密碼)、digest-auth(賬號密碼+realm)、Oauth1.0(customer key+)、Oauth2.0、hawk authentication
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/502568.html
標籤:其他
上一篇:第五講 Python中的函式
