Python Flask-使用Accomping JSON发布文件

Python Flask-使用Accomping JSON发布文件,python,post,flask,Python,Post,Flask,是否可以将文件发布到同时包含文件和JSON数据的flask应用程序 在我最初的开发中,我是通过两个api端点来实现这一点的,它看起来很笨重。我希望能够通过一篇文章而不是两篇来完成这一点 这可能吗?是的,您可以发布一个包含JSON数据的文件。例如: import requests with open(path_to_file, 'rb') as my_file: files = {'file': my_file} payload = {'data1': 'foo',

是否可以将文件发布到同时包含文件和JSON数据的flask应用程序

在我最初的开发中,我是通过两个api端点来实现这一点的,它看起来很笨重。我希望能够通过一篇文章而不是两篇来完成这一点


这可能吗?

是的,您可以发布一个包含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库):


  • 您需要发出一个多部分请求,只需发出一个多部分POST请求;其中一部分是您的文件上载,其他部分可以是JSON编码的字符串,也可以像您在常规表单帖子中那样包含单独的键/值。这很有效,谢谢!我想我还需要学习如何处理所有这些。只有当
    有效负载中的每个参数都是字符串时,此解决方案才会起作用,因此您发送的不是真正的JSON对象。如果所有的参数都是字符串,那么最好将它们包含在
    文件
    对象中。