【问题标题】:AWS Gateway API: ERR_CONTENT_DECODING_FAILED in browserAWS 网关 API:浏览器中的 ERR_CONTENT_DECODING_FAILED
【发布时间】:2017-09-04 07:39:51
【问题描述】:

我已经部署了一个网关 API。当我从 AWS 控制台中对其进行测试时,它可以工作。当我使用“邮递员”(通过发送 Accept-Encoding:identity 标头)对其进行测试时,它可以工作。

但是当我使用 (Chrome) 浏览器对其进行测试时,它失败了......我收到了这个错误......

ERR_CONTENT_DECODING_FAILED

我已经按照建议herehere 将标头Accept-Encoding:identity 添加到网关API 中的“集成请求”中。但它没有任何区别。

有人可以帮忙吗?

任何其他问题,请告诉我。

谢谢

【问题讨论】:

  • 添加Accept-Encoding: identity 是一个小技巧,告诉你的源服务器不支持Content-Encoding: gzip,因此Transfer-Encoding: chunked 不会被使用,因为一些服务器在他们决定时切换到分块传输编码gzip 内容。如果您的后端无论如何都在进行分块编码,这将是“真正的”问题。您可以从源(后端)服务器捕获响应标头吗?

标签: amazon-web-services aws-api-gateway


【解决方案1】:

这是一个菜鸟的错误......重新部署 API 解决了这个问题......

【讨论】:

    【解决方案2】:

    我也遇到了这个问题,发现这是因为我的 API 正在提供压缩(gzipped)资产,而 API Gateway 不喜欢压缩响应,除非您对正文进行 base64 编码并在响应对象中设置 base64encoded = true

    这个讨论也有帮助:https://forums.aws.amazon.com/thread.jspa?threadID=241530

    【讨论】:

      猜你喜欢
      • 2023-03-05
      • 2012-10-30
      • 2021-02-28
      • 2018-05-22
      • 2020-10-23
      • 1970-01-01
      • 2023-03-04
      • 2019-05-31
      • 2015-11-17
      相关资源
      最近更新 更多