問題排查:同樣的請求,Jmeter報錯失敗,Postman卻沒有問題

這是個坑啊~

準備用Jmeter做壓力測試,實現(xiàn)把單個接口的相關參數(shù)在Postman里面調試通過,然后搬運到Jmeter上面來,先跑一次看是否通過。

詭異的事情出現(xiàn)了:居然不行!

仔仔細細的比對了兩個工具里該請求的相關參數(shù):

  • 是Post請求,地址沒寫錯;
  • 請求body是form-data,參數(shù)也都一致;


    postman的body配置
jmeter的body配置
  • header所需的所有參數(shù)也都一樣,并且都按照開發(fā)文檔的要求填上了Content-Type: multipart/form-data


    postman的header配置
jmeter的header配置

可以說是一模一樣了!

由于Jmeter的header是單獨用HTTP Header Manager來管理的,因此還特意檢查了它的作用域(和HTTP request平級或者是其子級,可以被使用到),也是OK的。

無意中禁用了HTTP Header Manager,然后再請求,居然這次jmeter請求成功了!

由于這個請求的header里面參數(shù)較少,只有Content-Type,所以推測是和它有關系。

檢查了jmeter中,這次請求成功的request數(shù)據(jù),發(fā)現(xiàn)有這么一行:Content-Type: multipart/form-data; boundary=wVDFbKOrJUSR6pzaJkPhlIWnwLcdmKHHV9,也就是說,好像自動加上了Content-Type。仔細想想,在body里面是有勾選```Use multipart/form-data``的,所以應該和這項配置有關。

所以這么說,我在header里面再寫一遍反而是冗余的?于是嘗試把postman里這一項也給刪掉,同樣也能請求成功。

那么加上它,request數(shù)據(jù)會有什么不同嗎?檢查后發(fā)現(xiàn)有這么一行:Content-Type: multipart/form-data和上面的相比缺少了boundary。雖然不知道為什么這一點點區(qū)別就會導致jmeter請求失敗,總算是把問題給解決了。

個人猜測,可能不同工具對待冗余參數(shù)的處理方式不同,所以postman是可以兼容的,而jmeter不行。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 原文地址:https://blog.csdn.net/woaixiaoyu520/article/details/...
    Albert陳凱閱讀 625評論 0 2
  • 前言最近在使用Postman調接口的過程中突然想到一個問題,如果GET請求將參數(shù)放到請求體中會怎么樣,POST請求...
    飄逸解構閱讀 19,098評論 2 10
  • 請求構建器 在構建器(Builder)選項卡下,請求構建器允許您快速創(chuàng)建任何類型的HTTP請求。HTTP請求包含四...
    千夜閱讀 18,132評論 1 1
  • 勇氣讀書會——閱讀打卡第十七天 閱讀書籍:《致青年教師》 2019.1.28 《必須遵守的教育倫理》 今天是小年...
    托克托126何芳閱讀 517評論 0 7
  • 天空微微泛白,黎明就這樣悄悄來臨,靈魂終于從懶睡中醒來,生命再一次獲得了重生…… 黎明:象征新的一天,新的希望,新...
    悠然拒聊閱讀 301評論 0 1

友情鏈接更多精彩內容