我正在尝试在API中创建一个端点,该端点允许同时上传多个文件,并通过Flask-restx生成的Swagger UI使用它
我正在使用Pyhton 3.7 / Flask 1.1.2和Flask_restx 0.2.0(这是flask_restplus的分支,不再维护)
因此,在阅读文档之后,我编写了以下代码:
estimate_files_upload = reqparse.RequestParser()
estimate_files_upload.add_argument(
'estimate_data_files',
type=werkzeug.datastructures.FileStorage,
location='files',
required=True,
help="help",
action='append'
)
@ns.route('/estimate/data_files/', methods=['POST'])
class ApiImportEstimateDataFiles(Resource):
@api.expect(estimate_files_upload)
def post(self):
estimates_files_list = request.files.getlist("estimate_data_files")
问题是request.files始终为空,而我通过UI上传1个或多个文件,因此getlist不返回任何内容。
如果我删除action =“ append”,它就像一个超级按钮。但是,当然,在这种情况下,我只能上传一个文件。
请问我在做什么错?