put方法上傳文件踩坑


在項目中,我們用過最多的上傳文件的http接口其實一直是post,直到遇到了put,我才了解,用PUT方法上傳文件也是可行的,而且,put方法的特點是傳輸的實體部分是一個無結構的二進制數據,而post方法則傾向於結構化的數據。上傳文件這個行為本身是無結構數據的傳輸,文件是一個整體,文件的內容與傳輸行為無關,所以使用PUT更合適。

對於put上傳文件,踩坑如下:

1.其實不關是上傳文件本身,還需要傳遞到文件的一些相關信息,例如授權、MD5值這類信息,保證文件傳輸的有效性和一致性。以當前用到的jmeter 5.3為例,可以在Parameter中帶,也可以直接已拼接形式在path中帶上,要注意的是里面的“?”符號和“&”符號。

2.文件頭尤其重要,通常會帶MD5值、content-type這類關鍵信息。

3.文件本身也要帶,可以使用Files Upload本身,但在抓包中,其實看不到boudary分界線以及MIME TYPE這類信息,因此這兩項要讓它空着,否則會一直提示文件MD5校驗不通過。此處是個巨坑。

 

4.multipart/form-data在header中的content-type已體現,在接口中不要勾上。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM