robot:接口入参为图片时如何发送请求

https://www.cnblogs.com/changyou615/p/8776507.html

接口是上传图片,通过F12抓包获得如下信息

由于使用的是RequestsLibrary,所以先看一下官网怎么传递二进制文件参数,https://2.python-requests.org//en/master/user/advanced/#post-multiple-multipart-encoded-files

其中说到:只需将文件设置为以下元组的列表

To do that, just set files to a list of tuples of (form_field_name, file_info):

>>> url = 'https://httpbin.org/post'
>>> multiple_files = [
        ('images', ('foo.png', open('foo.png', 'rb'), 'image/png')),
        ('images', ('bar.png', open('bar.png', 'rb'), 'image/png'))]
>>> r = requests.post(url, files=multiple_files)
>>> r.text

但是由于还有入参,所以不能将multiple_files构造为list,而是需要构造为字典,这一点在Post Request关键字说明中可以得到验证,如下:

所以先构造元组,再将元组作为&{multipleFile}字典中的值,键的名字为第一张图中抓取到的入参的名称;

由于访问该接口需要鉴权,所以先将设置了cookies,再在创建session时使用,创建会话时一定不要自己写Content-Type;

最后一步将组装好的&{multipleFile}字典传给files参数

原文地址:https://www.cnblogs.com/gcgc/p/11364713.html