【问题标题】:Google API Gateway - streaming data in responseGoogle API Gateway - 响应流式传输数据
【发布时间】:2021-11-04 16:57:53
【问题描述】:

我使用Google Cloud API Gateway 是为了获得我的后端服务的单点入口,并添加 api-key 安全级别。

而且我有一个端点,它应该将数据作为流块逐块返回(内容类型是音频/mpeg)。端点称为 GET /stream。

我注意到,当我通过 Google API Gateway 访问此 GET /stream 端点时,响应的返回延迟为 3-4 秒,而不是作为流,而是作为完整的响应。另外,我注意到响应中还返回了 Content-Length 标头,这使我认为只有在将响应返回给发出请求的客户端之后才在网关端下载第一个响应。

当然,如果我使用原始 API(没有 Google API 网关),我可以立即使用流响应,不会有任何延迟。

以下是通过 swagger 2.0(openAPI) 协议对 Google API Gateway 配置进行描述的方式:

Google API Gateway 目前是否支持流式响应?我可以在网关的 swagger 2.0 配置中进行任何更改吗? Bacisly,关于我可以使用什么来替代 Google API Gateway 来满足我的需求 + 流支持的任何建议?

感谢任何建议。提前致谢!

【问题讨论】:

    标签: google-cloud-platform stream openapi google-api-gateway


    【解决方案1】:

    Github 中有一个关于 OpenAPI 中的流式支持的持续功能请求。但是,这是针对 OpenAPI v3,而不是 v2。

    如果我们查看功能请求,有一个解决方法是使用file 格式而不是binary。这应该得到支持,因为 API Gateway 使用 overview 中所述的 OAS v2,

    Google API Gateway 支持使用 OpenAPI 规范 2.0 版描述的 API。

    作为附加参考,您可以查看 OpenAPI v2 Data Types

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-02-19
      • 2014-07-19
      • 2012-09-05
      • 2016-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多