在 swagger.yml 中指定“流媒体”响应,以将数据逐步发送到一個 bravado 客戶端

2024-04-29 15:28:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我们实现了一个基于Python的REST服务,它通过Swagger指定端点。在客户端,我们使用bravado library。这种组合对于除一个端点外的所有端点都适用。该端点必须返回一个大数据集,该数据集不能保存在内存中,必须流式输出。我想一次每行发送一条记录,如here所述。根据specification应该可以使用“file”作为数据类型,但是我找不到输入文件(即文件上载)的示例,也找不到下载文件的示例。在

有什么提示如何通过Swagger指定流输出以及如何通过bravado客户端检索它?在


Tags: 文件数据内存rest客户端示例hereswagger
1条回答
网友
1楼 · 发布于 2024-04-29 15:28:19

在Swagger模式中有一个bug,您可以在这里找到:https://github.com/OAI/OpenAPI-Specification/issues/260我使用的库仍然使用旧模式。更新解决了问题。bravado客户机试图将整个数据加载到内存中,这使得它在我的用例中不可用,但是一般来说,如果您使用最新的模式并且您的数据适合内存,那么它是可以工作的。在

相关问题 更多 >