问题标签 [flask-restx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1240 浏览

python - 如何在 Flask-Restx 中返回嵌套的 json 响应

我正在尝试使用 Flask-RestX 制作一个可以显示这样的响应的 API,

当数据是这样的(在我的情况下,我不控制数据格式),

但是我用当前代码得到的响应是错误的,它显示空值

完整代码——

我对 Flask-RestX / Flask-RestPlus 完全陌生。请告诉我,如何在不更改数据格式本身的情况下实现这一点。

0 投票
0 回答
389 浏览

python - 如何将我的静态文件夹移动到带有 flask-restx 前缀的 url

我正在尝试使用 flask-restx 包部署一个应用程序烧瓶,但我一直坚持如何在产品服务器上正确显示文档。它在本地运行良好,没有任何前缀,但在服务器上,文件 url 需要加上前缀my-prefix,我正在努力使 swaggerui 文件可以从 url 访问:url/my-prefix

这是我的代码:

有了这个,我得到了swagger.json很好的 url,但在文档页面的代码源中没有正确的引用。swaggerui 文件在文档页面的代码源中没有很好地引用,在可访问的 url/my-prefix/swaggerui/files.

所以我添加了这个:

这样,swaggerui 文件和 swagger.json 文件可以方便地在文档页面 (url/my-prefix/swaggerui/myfileurl/my-prefix/swagger.json) 的代码源中引用,但无法从此 url 访问 swaggerui 文件。你知道我应该添加什么以使它可以在这个 url 上访问:url/my-prefix/swaggerui/myfile

0 投票
1 回答
654 浏览

python - Swagger with Flask (restx) 中的下拉菜单

我正在使用 flask-restx 库构建我的第一个 API。我用它来生成带有注释的 API 的 Swagger 文档。我目前有一些用于发布方法的字段,但默认情况下它们都接受字符串形式的输入,您必须在 Swagger 'Try it out' 中输入它们的值。如何使它们成为下拉列表,以便用户从中选择输入参数?

我目前为我的命名空间使用以下装饰器:

我用这样的 post 方法解析它们:

它们目前以大张旗鼓的形式显示为输入字段。我将如何使它们成为具有特定值的下拉列表以供选择?我应该在解析器中以不同的方式向装饰器添加一些东西吗?

谢谢。

0 投票
0 回答
92 浏览

flask - Flask-restx:如何解析和恢复 json 可序列化值

我开发了以下代码:

我发送请求如下:

为了管理我的条目,我想使用flask-restx(这是最好的主意吗?)。我面临的问题是,使用reqparse.add_argument,我得到一个str“data”参数而不是dict/json,我无法控制json“data”值和子值/json“data " 类型和子类型(如optional_arg1和 "arg1")。

如何使用 flask-restx 管理我的条目?我应该使用另一个库吗?

0 投票
1 回答
151 浏览

flask - 如果启用了身份验证,flask-restplus /flask-restx 会自动将 401 响应添加到 Swagger 文档

正如标题所述,我希望将@api.response(401, 'Unauthenticated')响应添加到所有需要身份验证的 API 的文档中。

flask-resplus/restx显示一个锁定图标,因此用户应该期待一个401if not 身份验证,但我希望这个响应是明确的,而不必在每个方法或资源上显式地编写该装饰器。

这可能与一些全局设置?

0 投票
1 回答
96 浏览

flask-restplus - 如何在 flask-restplus/flask-restx 的有效负载中指定通用字典?

我有一个接收 JSON 的 API,看起来像这样

所以我想按照这些思路定义一些东西

当然,这不起作用。

我知道如何定义一个提前知道键的模型,但是我需要支持任何字典,其中键是字符串,值是任意数量的字符串的(同类)数组。

我调查过,api.schema_model但我无法flask-restx接受任何东西,甚至没有一本普通的字典。

这可能吗?如何?

0 投票
0 回答
243 浏览

flask-restplus - Swagger(使用 flask-restx/plus)可选列表/嵌套 JSON

我需要 API 接受:

并且

即,当没有孩子时,可以跳过该字段。

我尝试定义模型:

以及:

以及几乎所有的as_list, allow_null, 'skip_none anddefault` 组合(无,[] 等)

我希望required=False为其他类型工作List和/或Nested以相同的方式工作。如果服务器不包含children在 JSON 中,则封送总是会添加一些值。但是,当客户端向服务器返回相同的 JSON 时,封送会抱怨。

如何实现可选列表/嵌套 JSON?

0 投票
1 回答
50 浏览

python - 用于自定义标头与部分对象获取的 HTTP HEAD

我希望根据该文档的特定属性的值对该文档执行有条件的 GET 请求。我遇到了两种可以帮助我做到这一点的方法。

  1. 将此属性作为 GET 方法的自定义标头包含在内,并使用 HEAD 请求获取标头并确定是否实际发出 GET 请求。

  2. 使用flask-restplus/flask-restx 中的字段掩码对 GET 请求使用部分对象获取。

我不确定这两种方法是否是解决手头问题的最佳方法。

使用自定义标题是一种常见的做法吗?有没有随之而来的危险信号?(我遇到了一个这样的答案,提到一些防火墙过滤掉自定义标头)

部分对象获取实际上有什么切实的好处吗?幕后的操作有何不同?

0 投票
1 回答
101 浏览

python-3.x - 在命名空间实例化 flask_restx 上添加 doc 装饰器

我正在尝试将 OpenAPI/Swagger 文档添加到 flask_restx 命名空间类。

添加文档的文档化方法是通过在 Resource 类上添加 doc 装饰器来完成的:@ns.doc(description="my documentation").

在 Namespace 类中有一个 decorators 参数,它接受一个装饰器列表并将它们应用于每个资源(然后在 Api 类中调用它们)。

我不知道如何将@ns.doc装饰器列表添加到命名空间

ns_doc_decorator应该可以接收一些默认参数

0 投票
1 回答
171 浏览

python - 带有嵌套字段的烧瓶restex @expect

我正在使用嵌套字段来验证传入的 post 请求,使用@api.expectlike

当我使用payload1like时出现异常

'dict' 对象没有属性 'name'

我希望这两种形式都能验证传入的请求。想知道没有模型包装器的嵌套字段不起作用的原因。