Description
Hey,
I'm trying to upload a list of files to my post method using the swaggerUI
I am defining my input using RequestParser and add_argument method.
Uploading one file works just fine, but once I'm adding 'action=append' to make it a list of files it doesn't work.
my code looks like this:
from flask_restx import Namespace, Resource, reqparse
from werkzeug.datastructures import FileStorage
upload_parser = reqparse.RequestParser()
upload_parser.add_argument('images', location='files',
type=FileStorage, required=True, action="append")
@api.route("/")
class MyResource(Resource):
@api.expect(upload_parser)
def post(self):
args = upload_parser.parse_args()
images = args['images']
This is the cUrl from swagger:
curl -X POST "http://127.0.0.1:8000/" -H "accept: application/json" -H "Content-Type: application/x-www-form-urlencoded" -d "images=%5Bobject%20File%5D&images=%5Bobject%20File%5D"
And the problem is that swagger sends it as application/x-www-form-urlencoded
and not multipart/form-data
Saying again, if I don't add the action='append'
to the add_argument
method, and I only send one file using Swagger it sends it as multipart/form-data
Is there any way to control it?