之前就已经有打算分享一篇关于使用Post请求发送多个文件的博客;最近好好工作、天天打游戏,也就耽误许久。今天来分享下,这个上传多个文件的请求实际也是一种 一个参数传多个值的情况;


(一)POST请求-multipart/form-data

这篇分享:POST请求方法之content-type:multipart/form-data

如果不了解我说的是什么鬼,可以先看下

这篇分享只拿出证明结论的成功用例来分享;很多抓包的截图、略重复的用例就不分享了。

第一个接口是Requests的文档找到的,与此同时,也给出了怎么来写参数。

一个接口多个vlan_JMeter

JMeter访问此post请求

一个接口多个vlan_上传多个文件_02

响应数据:

一个接口多个vlan_Requests_03

Postman访问此post请求

一个接口多个vlan_Postman_04

查看抓包的数据

一个接口多个vlan_Requests_05

Requsets库 成功访问此post请求【设置了断言,打印了很多信息】

[(“参数名1”,文件1),(“参数名1”,文件2),(“参数名1”,文件3),(“参数名1”,文件4),(“参数名1”,文件5)]
((“参数名1”,文件1),(“参数名1”,文件2),(“参数名1”,文件3),(“参数名1”,文件4),(“参数名1”,文件5))

文件 可以写成open(“文件”,“rb”) 和(“文件名”, open(“文件”,“rb”), “文件类型”),如下图

一个接口多个vlan_上传多个文件_06

第三方包 requests-toolbelt :

一个接口多个vlan_Postman_07

一个接口多个vlan_一个接口多个vlan_08

一个接口多个vlan_JMeter_09

一个接口多个vlan_一个接口多个vlan_10

下面2个接口 【真实接口,后面图片的马赛克也多见谅】

一个接口多个vlan_Postman_11

抓取手机app使用此接口的数据

一个接口多个vlan_JMeter_12

JMeter访问此post请求

一个接口多个vlan_JMeter_13

一个接口多个vlan_Requests_14

Postman访问此post请求

一个接口多个vlan_上传多个文件_15

抓取Postman使用此接口的数据

一个接口多个vlan_一个接口多个vlan_16

来看下JMeter 和 Postman 创建的数据


一个接口多个vlan_上传多个文件_17

Requsets库 成功访问此post请求【设置了断言,打印了很多信息】

一个接口多个vlan_一个接口多个vlan_18

抓取的数据

一个接口多个vlan_一个接口多个vlan_19

下面两个用例 留意detail的传参值

一个接口多个vlan_Postman_20

一个接口多个vlan_JMeter_21

来看下前面两个用例创建的数据

一个接口多个vlan_Requests_22

第三方包 requests-toolbelt :

一个接口多个vlan_一个接口多个vlan_23

一个接口多个vlan_一个接口多个vlan_24

第三个接口:只传参picFiles

一个接口多个vlan_Requests_25

JMeter访问此post请求

一个接口多个vlan_一个接口多个vlan_26

响应数据:

一个接口多个vlan_一个接口多个vlan_27

Postman访问此post请求

一个接口多个vlan_上传多个文件_28

一个接口多个vlan_Requests_29

Requsets库 成功访问此post请求【设置了断言,打印了很多信息】

一个接口多个vlan_Requests_30

一个接口多个vlan_JMeter_31

一个接口多个vlan_Postman_32

一个接口多个vlan_一个接口多个vlan_33