1. 程式人生 > >Jmeter如何使用正則表示式把提取的token值作為Bearer 型別放在其他介面的請求頭裡?

Jmeter如何使用正則表示式把提取的token值作為Bearer 型別放在其他介面的請求頭裡?

     近日,在用Jmeter介面測試過程中遇到一個難題,業務場景裡很多依賴token的介面,在設定了正則表示式後,取不到token的值,導致報錯,後經過多番排查 嘗試設定後,最終找到解決方案,現將此次案例線上記錄,以便能幫到有相同經歷的同行們。

我們介面設計的邏輯如下:

1.賬號登入之後返回一個動態的token,使用者資訊的介面需要拿到這個token的值,放在請求頭裡作為傳參物件

2.token的值,不能直接作為傳參物件,屬於bearer型別  需要組合傳參:Bearer "toke"值

首先,第一步用正則表示式提取token值,選中登入介面,右鍵--新增--後置處理器--正則表示式提取器,(我這邊的"token" : "eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxMzE1NzEzNjU4NiIsIm9wZW5pZCI6IjJiY2I0YTNiYTg0Njc2MjM5ZTQ4Y2JlYjE5NmI4MDFjIiwidXNlcmlkIjo0NDcyNzQxLCJleHAiOjE1MjczODM3NTB9.b6GkbQ98dWi57wwSnZqL722n5mqvS1N8YXGmRYaBzRsM7wFa6QxCT2ZwQRWmw2Gb2HC3MAa2T_rE6w4R6",)


,在同一個執行緒裡 右鍵新增一個獲取使用者資訊的介面,右鍵新增配置原件---HTTP資訊頭管理器,注:同一個執行緒下不同的介面使用不同的請求頭


最後新增一個檢視結構樹,執

起初,不清楚同個執行緒裡,不同的介面還能設定不同的請求頭,思路一直侷限在 兩個執行緒裡,但其實兩個執行緒是獨立的,第一個執行緒提取的token,無法返回到第二個執行緒裡。