[英]Passing a remote file to a http post request in python
我有一个提供上传文件发布功能的休息 api。 为了测试这个,我只是在我的 python 测试代码上做了这个:
fo = open('file.zip', 'rb')
rb_file = {'confile': ('file.zip', fo, 'multipart/form-data')}
resp = requests.post(url,files=rb_file)
fo.close()
此请求返回一个 uuid 响应{ce9f2d23-8ecd-4c60-9d31-aef0be103d44} ,这是启动另一个扫描后运行所需的。
从 Swagger 中,手动将此 uuid 传递到扫描发布请求会生成以下 curl:
curl -X POST "http://....../scan" -H "Content-Type: multipart/form-data" -F "FilID=ce9f2d23-8ecd-4c60-9d31-aef0be103d44"
我的问题是如何将此 curl 转换为 python 请求代码,并指出我的本地机器上不再有该文件。 服务器似乎期待 -F 而不是参数。 在这种情况下,如何将本地计算机上不存在的文件传递给 http 请求? 我只有 filID。 我尝试作为 param 运行,但没有找到资源。
试试这个 !
import requests
headers = {
'Content-Type': 'multipart/form-data',
}
files = {
'FilID': (None, 'ce9f2d23-8ecd-4c60-9d31-aef0be103d44'),
}
response = requests.post('http://....../scan', headers=headers, files=files)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.