当前位置: 首页 > 知识库问答 >
问题:

Swagger留档用于使用flask-rest x进行API响应

邹俊豪
2023-03-14

我正在阅读使用flask-rest x的swagger留档,并遵循示例。我知道为了为API获取的参数生成swagger文档,我应该这样做

@api.doc(params={'id': 'An ID'})

然而,我找不到关于如何记录API响应主体的解释。不是响应代码,而是由例如get方法返回的结果。我要找的是如下内容:

class MyResource(Resource):
    @api.doc(returns={"info": "Some very interesting information"})
    def get(self, id):
        res = some_function_of_id(id)
        return {"info": res}

有人知道这是否可能,如果可能,如何实现?

共有1个答案

佴飞驰
2023-03-14

试试api.response设计师

model = api.model('Model', {
    'name': fields.String,
})
@api.route('/my-resource/')
class MyResource(Resource):
    @api.response(200, 'Success', model)
    @api.response(400, 'Validation Error')
    def get(self):
        pass

请注意,@api.marshal_with()装饰器会自动记录响应。

https://flask-restx.readthedocs.io/en/latest/swagger.html#documenting-with-the-api-response-decorator

 类似资料:
  • Flask RESTX Flask-RESTX is a community driven fork of Flask-RESTPlus. Flask-RESTX is an extension for Flask that adds support for quickly building REST APIs.Flask-RESTX encourages best practices with

  • 我需要我的Node REST API进行版本控制。我正在使用swagger 2.0作为验证中间件和文档。目前,我只有一个用于所有目的的swagger yml文件。 我使用url前缀(版本号:/v1/../v2/…等)来支持节点Rest API中的版本控制。我需要在任何时候支持多个版本。 我应该为每个API版本创建一个单独的swagger yml文件吗?如果是,如何在 swagger 验证中间件中加

  • 我正试图在我的swagger的<code>info</code>部分的<code<description</code>字段中包含一个图像,该字段与swagger UI一起显示。到目前为止,我已经尝试过GFM: 和普通的旧HTML: 但这两种都只是按给定的方式呈现字符串,不显示图像。 有没有办法做到这一点?

  • 根据swagger文档, null 我已经遵循了昂首阔步的安装步骤和它的工作正确。但是swagger自定义配置的步骤不起作用。我保存了如下文件, 你知道我是不是漏掉了什么吗?

  • 关于这个留档,我有一个非常简单的问题使用标准API创建查询:留档 在CriteriaBuilder界面部分的表达式方法中,您可以阅读以下关于本部分中的方法的内容:表35-3 CriteriaBuilder界面和方法使用示例中的复合谓词方法: 但实际上这是行不通的,因为在方法之后,您不能调用...正确的用法是: 这是为什么?也许有版本差异?或者可能只是文档中的一些错误,但如果是这样的话,我会把这个留

  • 我正在使用 swagger 来生成我的 REST API 的文档。但是,我在指定某些 API 调用的响应时遇到问题。 这是我的代码: 这是它生成的文档: 而且我不明白为什么错误响应不像 200 响应那样属于“数组”类型。我想要的是所有响应的格式与 200 个响应(带有项目的数组)相同: 谢谢你抽出时间。