amazon-web-services - 如何防止api网关转换base64响应
问题描述
我有一项服务可以将图像数据作为正文中的 base64 编码文本返回:例如
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAgAE...etc
但是,当我们将服务放在充当代理的 api-gateway 后面时,相同的请求似乎会将响应转换为二进制
�PNG
IHDR,,y}�u IDA... etc
并且有一个响应头
Content-Type: application/json
该文档解释了如何自动转换为二进制文件,但没有提及如何保持响应不变。我尝试将 contentHandling 更改为 CONVERT_TO_TEXT 但没有成功,所以我想知道是否有另一种方法可以让 api 网关不会干扰我的服务响应。
解决方案
我相信您使用的设置与我相同;
API gateway
V
Proxy (no contentHandling available)
V
Lambda (returns {body: Buffer.toString('base64')})
这为我解决了这个问题:https ://stackoverflow.com/a/47780921/853015 。
推荐阅读
- google-sheets - 使用 Google 表格条件格式根据单列中的范围突出显示单元格
- machine-learning - 从文本中提取的图像的错误预测
- java - 将表从 Oracle 复制到 Redis
- python - 读取 Excel 中的单元格值并使用 python 写入其他现有 Excel 文件
- python - 迭代 2 个数据帧以在多边形中查找点的最快方法
- excel - 输出用户登录到单元中服务器的宏
- postgresql - psycopg2: cur.fetchone() 返回上一个请求结果
- java - SQL 状态 [null]; 错误代码[0];语句已关闭。嵌套异常是 java.sql.SQLException: Statement is closed
- tensorflow - Tensorflow 数据集:使用不同形状的数据制作批次
- typescript - fp-ts 和 jest:Option 和 Either 的人体工程学测试?