利用 python requests完成接口文件上傳


最近在准備一個公開課,主題就是利用不同的語言和不同的工具去實現文件的上傳和下載。

在利用Jmeter去實現功能的時候,以及利用loadrunner去寫腳本的時候,都很順利,沒有任何問題,當我嘗試用Python去解決這個問題的時候,花了一些時間。

這也讓我在學習和嘗試中,找到了很多樂趣,下面給大家分享下,如何去實現操作。

 

前提:

1:有一個上傳接口,地址如下:http://xx.xx.xx.xx//upload/stream(公司的服務,地址不便外發~有興趣的同志可以來看我們的公開課!)

2:上傳接口的參數如下所示:

{"parentId":"","fileCategory":"personal","fileSize":179,"fileName":"summer_text_0920.txt","uoType":1}

其中有兩個參數需要跟大家解釋一下:filesize:指的是文件的字節大小。 filename:指的是你上傳之后保存的文件名~記得不要搞錯了后綴喲。其他的參數可以忽略,在做自己公司接口的時候,就按照自己公司的接口文檔去做即可。

開始操作:

1:安裝requests模塊,安裝命令:pip install requests

2:發送請求,代碼如下所示:

header={"ct":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9"}
files = {'file':open('D:\\test_data\\summer_test_data_05.txt','rb')}
#此處是重點!我們操作文件上傳的時候,把目標文件以open打開,然后存儲到變量file里面存到一個字典里面 upload_data={"parentId":"","fileCategory":"personal","fileSize":179,"fileName":"summer_text_0920.txt","uoType":1} upload_res=requests.post(upload_url,upload_data,files=files,headers=header)
##此處是重點!我們操作文件上傳的時候,接口請求參數直接存到upload_data變量里面,在請求的時候,直接作為數據傳遞過去

 

查看結果:

執行完代碼后,看到我們上傳成功,效果如下:

 

 大家如果有上傳文件的接口,趕緊去試試吧!

學習了代碼后,有些事情就會顯得輕松多啦!

 


免責聲明!

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



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