问题标签 [connexion]

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 回答
1534 浏览

python - 你可以在查询和正文中混合 Swagger 的参数吗?

我在尝试时遇到错误,但我想创建一个接受 2 个查询参数和 1 个正文项目的端点,一个名称列表。当我在连接中运行它但说它是无效的规范时。

它在没有 - in: body 部分的情况下编译和运行。所以我知道这两个参数都很好。似乎我在将 json 数组发送到 python 时遇到问题。

显式返回的错误是:

connexion.exceptions.InvalidSpecification: {'in': 'body', 'name': 'device_names', 'required': True, 'type': 'array', 'items': {'type': 'string'} , 'description': 'A list of Device Names'} 在任何给定架构下均无效

无法验证架构中的“oneOf”['properties']['paths']['patternProperties']['^/']['properties']['post']['properties']['parameters'][' items']: {'oneOf': [{'$ref': '#/definitions/parameter'}, {'$ref': '#/definitions/jsonReference'}]}

On instance['paths']['/devices/list']['post']['parameters'][2]: {'description': 'A list of Device Names', 'in': 'body', 'items': {'type': 'string'}, 'name': 'device_names', 'required': True, 'type': 'array'}

我想要的最终状态是我可以说:

0 投票
1 回答
117 浏览

python - 使用 uWSGI 运行时,multiprocessing.Process 阻塞了 return 语句

我正在运行一个 API,目前,我正在使用subprocess.Popen. 由于被调用的模块是纯 python,我的想法是使用multiprocessing.Processor运行它Pull。请求是这样处理的:

  1. 请求到达Connexion端点
  2. 一些预处理完成
  3. 函数用 Popen 打开
  4. 请求返回 200 而无需等待 3. 完成

更换时:

这发生在使用uwsgi 的多处理中:

  1. 请求到达Connexion端点
  2. 一些预处理完成
  3. 该函数使用 Process 打开
  4. 该请求立即返回 200,但对同一端点的第二个请求将需要前 3 个完成。

如果我在https://github.com/tiangolo/uwsgi-nginx-flask-docker上运行它:

...

  1. 请求等到 3 完成,然后返回 200

如果我使用python -m ....

我的 uwsgi.ini 看起来像这样

0 投票
1 回答
399 浏览

python - 在控制台中运行时防止 Flask 双重记录

我正在使用 Python Flask 和 Connexion 创建一个 REST API。很难弄清楚使用这两个库如何进行日志记录,并且在尝试在本地运行/调试时遇到了双重日志记录的奇怪问题。

app/log.py

main.py

上面的代码让我使用自定义日志格式,每个请求在请求期间都获得一个 UUID。虽然这可行,但我无法弄清楚如何停止双重记录。正如您所见,main.py我弹出(唯一)处理程序并添加我自己的处理程序,当我将处理程序打印到控制台时,只有一个 - 我添加的那个。

这可行,但在一定数量的消息之后,它才开始双重记录:

好像处理程序已被重新添加。我不确定是否正在重新添加处理程序,或者我是否以错误的方式进行处理。

这是我在整个应用程序中记录的方式,例如:

inbound.py

0 投票
1 回答
1281 浏览

python - aiohttp - 在请求每个 API 调用之前

当我使用 Flask 时,每个 API 调用在处理之前都经过身份验证:

当我将其更改为 AioHttp 时,我的身份验证未正确设置:

我的请求没有被重定向到 API 方法。

谁能帮我设置每个 API 的 before_request 身份验证?谢谢。

0 投票
1 回答
4018 浏览

reactjs - 使用 openapi-generator 启用 CORS

所以我使用openapi-generator来生成一个烧瓶服务器来服务我的 api。

我可以毫无问题地生成运行它的服务器并在浏览器中查看端点。但是,当我从我的 React Web 应用程序发出 GET 请求时,我收到了一个 CORS 错误。

我尝试了一些方法来启用 CORS。

我尝试将标头添加到我的 .yaml 中的端点。

当我尝试通过 .yaml 添加标头并尝试重新生成服务器模块时,出现此错误:

我还尝试在服务器模块的.py 中安装和导入 flask_cors 。

我同时尝试了这两种方法。我在 swagger-codegen petstore.yaml示例和connexion docs中找到了这些修复。

但是,正如我所说,我使用的是 openapi-generator,因此它与其他工具中的任何一个都有些不同,但是我很难找到有关如何正确设置它的任何信息。在谁能帮助我之前,有没有人使用过 openapi-generator ?

0 投票
1 回答
289 浏览

flask - 如何在烧瓶中使用正则表达式验证 REST api 参数?

我正在使用flask/connexion 开发一个REST api。考虑这个端点:

category_name 和 version 来自字符串类型。如何使用自定义正则表达式验证它们?

我正在使用 sqlalchemy 和 marshmallow 进行 ORM 和数据序列化。

0 投票
1 回答
384 浏览

python - 在 connexion 中链接 yaml 文件时出错

我正在开发自定义微服务,它将为 Web 服务进行某种身份验证。正在使用flask、swagger 和connexion 开发微服务。由于 swagger.yaml 文件变得巨大(由于加载 url)以降低文件的复杂性,我试图将其分解。

在主要的招摇文件中,我尝试链接 theusers.ymlswagger.ymlby

所以当我运行项目时,它给了我这个错误..

这可能是什么原因?这个问题是由于connexion

0 投票
0 回答
1316 浏览

python - 在“运行”模块中找不到 Flask 应用程序或工厂

我正在尝试运行一个简单的连接 REST-API。我已经实例化了 connexion on 的实例run.py

服务器的 Swagger 规范swagger.yaml

应用程序的用户详细信息。users.py

为了延迟启动,我创建了 shell 文件server.sh

应用程序的文件夹结构。

当我运行外壳时,它给出了这个错误..

这里可能是什么问题?

0 投票
1 回答
38 浏览

python - 如何使用连接模块运行 PyQt 应用程序?

我想在 Qt 应用程序中运行连接服务器,但我不知道该怎么做。

我已经尝试过类似下面的东西,但是执行卡在“连接循环”中,并且按钮“关闭服务器”不会在控制台中显示单元 i ctrl-c 连接服务器...:

0 投票
2 回答
2173 浏览

python - (Swagger 2.0/ Connexion)无类型不是“字符串”类型

我正在尝试通过 python connexion 创建一个简单的 post API。这是我的 api yaml 文件:

name但是对于我们允许用户输入null的属性之一。如果他们真的这样做,我们将得到error: None type is not of type 'string'

那么在 swagger 2.0 中有没有让属性可以为空?网上找不到太多资料。谢谢!