2
是否可以将文件发布到兼容文件和JSON数据的烧瓶应用程序?烧瓶 - 使用JSON发布文件
在我最初的开发中,我通过两个api端点来做这件事,它看起来很笨重。我希望能够使用一个POST而不是两个完成此操作。
这可能吗?
是否可以将文件发布到兼容文件和JSON数据的烧瓶应用程序?烧瓶 - 使用JSON发布文件
在我最初的开发中,我通过两个api端点来做这件事,它看起来很笨重。我希望能够使用一个POST而不是两个完成此操作。
这可能吗?
是的,您可以使用随附的JSON数据发布文件。例如:
import requests
with open(path_to_file, 'rb') as my_file:
files = {'file': my_file}
payload = {'data1': 'foo', 'data2': 'bar'}
r = requests.post(data=payload, files=files)
有很多关于瓶和要求(一个很不错的HTTP LIB)有用的信息在这里:
只有当payload中的每个参数都是一个字符串时,这个解决方案才会起作用,所以它不是一个真正的JSON对象。如果所有的参数都是字符串,那么可以将它们包含在'files'对象中。 – v4gil
你需要多部分请求 – njzk2
只需制作多部分POST请求;其中一个部分是文件上传,其他部分可以是JSON编码的字符串,也可以包含单独的键/值,就像您使用常规形式的POST一样。 –
工作,谢谢!猜猜我对这一切还有一些学习。 – polkid