背景
最近在用aws的api gateway服务。发现一个问题。
前端通过api gateway从后端或者png图片的时候,前端收到的图片无法显示。
后来发现,图片的内容被处理过的。
原因分析
- 过程中要逐步排查,包括先排查后端和其它一大堆服务的问题。
- 最后把问题源头锁定在 api gateway。
- 最后查询资料发现,是因为api gateway默认把二进制binary数据当成文本数据处理了,做了一下转码之类的工作。
- 所以办法就是,让api gateway识别png和二进制文件,不要当成文本处理。
处理办法
- 查询了很多资料,但是大部分都是过时的。
- 最后找到2个比较靠谱的参考资料。
- 具体方法
- 在api gateway设置那里,配置二进制媒体类型(binary media type)
- 添加一项 / 。我之前设置过 image/png,好像不太行,后来没去深究
- 添加完之后,记得部署。
- 更详细的步骤,可以参照下面的资料。
参考资料
http://xzh.i3geek.com
0 条评论