我想上传一个json文件在烧瓶restful swagger api,这是我的参数
parameters=[
{
"name": "filename",
"description": "json file upload ",
"required": True,
"allowMultiple": False,
"dataType": "file",
"paramType": "body"
}
我用
reqparse.#######################################################################################
解析器。添加参数('filename',type=str,location='args')
parser.parse_args
打印(args.filename)
为了获得上传的文件名,我打印了它,但它没有。
如何在flask restful swagger api中上载文件?
非常感谢!
我已经解决了这个问题,写在这里:
改变
parser.add_argument(文件名,类型=str,位置='args')
到
解析器。添加参数('filename',type=werkzeug.datastructures.FileStorage,location='files')
但你首先需要进口werkzeug
然后您可以使用werkzeug的方法。数据结构。文件存储类
你可以从哪里使用它http://werkzeug.pocoo.org/docs/0.12/datastructures/
file=args。文件名
filename=文件名。文件名#上传文件名
文件保存(保存路径)#您可以将文件保存到要保存的路径#但请记住,保存路径包括文件名
也可以使用以下方法保存文件:
行=文件。read()#字节类
f=打开(文件名,“wb”)#新建一个文件并给出文件名
f、 写入(行)#写入字节
f、 关闭()
现在:parameters=[{“name”:“filename”,“description”:“dd”,“required”:True,“allowMultiple”:False,“dataType”:“file”,“paramType”:“body”}]
有点晚了,但是。。。
您需要在swagger中编辑endpoint定义。yaml
API规范文件,例如:
paths:
'/your/api/upload':
post:
summary: Upload a file.
operationId: postFile
consumes:
- multipart/form-data
produces:
- application/json
parameters:
- in: formData
name: file # change it to your parameter name
required: true
type: file
description: Stream to write to filesystem
# other optional form parameters, e.g. ...
- in: formData
name: offset
type: integer
description: Bytes to skip at the beginning of the file
之后,您可以自动生成Python控制器,例如使用Swagger Editor的内置函数。
参考:Swagger 2.0文档
问题内容: 我想知道如何用昂扬的方式记录枚举。 根据JavaDoc 数据类型。请参阅文档以获取受支持的数据类型。如果数据类型是自定义对象,请设置其名称,或不设置任何名称。如果是枚举,请为枚举常量使用’string’和allowableValues。 但是我没有找到一些好的Java示例如何真正使用它,规范在这里。 第一服务 第二服务 输入项 天 输出量 pom.xml 您可以在此处查看结果。 我看到
数据类型。有关支持的数据类型,请参见文档。如果数据类型是自定义对象,请设置它的名称,或者不设置任何名称。对于枚举,使用'string'和allowableValues作为枚举常量。 但是我没有找到一些好的Java示例如何真正使用它,规范在这里。 你可以在这里看到结果。 我认为是个问题... 你知道吗?
我们正在为我们的Laravel REST API实现开发Swagger文档。几个POSTendpoint将使用CSV作为参数内容类型。 Swagger中是否有一种方法可以让“立即尝试”功能与CSV POST文件上传一起使用? 下面是我们的留档http://api.curvecompass.com/docs/#/ 我们的Laravel POST函数可以正确地与CSVendpoint一起工作,而不是与
这可能吗?
问题内容: 我正在尝试使用swagger定义post端点,但是不允许使用该参数: 当我跑步时,我得到这个: 我的规格有什么问题? 问题答案: 您可能正在混合使用OpenAPI / Swagger 2.0和OpenAPI 3.0语法。您的规格似乎是2.0,但是关键字是3.0功能。在2.0中,请求正文被定义为正文参数: 更多信息:描述请求正文
我正在努力找到配置基本路径的方法。 我想配置基本路径服务器端 我正在使用OpenAPI生成器从一个招摇过市的endpoint(asp核心web api)生成SUB 是否有方法配置不同的基本路径。