Google Actions - 使用AWS API Gateway时的UTF-8解码

问题描述 投票:2回答:1

我正在研究我的第一个Google on Action,并且正在努力研究如何在我的基本卡和语音文本中显示unicode字符。

例如,“Beyoncé”在模拟器和手机中呈现为“Beyoncé”。

数据来自我的Amazon API Gateway,它返回我的Lambda的结果。这里的日志显示正确的格式,所以我猜我的Action没有正确设置?

有趣的是,表情符号也不会渲染(在同一个lambda中硬编码)。按照本指南https://developers.google.com/actions/assistant/responses#rich-responses所以我必须缺少一些配置?

我是Webhook的DialogFlow Fulfillment设置,我已将字符集设置为UTF-8和Content-Type到application / json

还有其他配置吗?

utf-8 aws-lambda aws-api-gateway actions-on-google
1个回答
2
投票

我的解决方案是将更多配置设置添加到我的AWS API网关。似乎DialogFlow v2不再假定(或默认为?)web钩子响应的utf-8字符集。

只需将content-type: application/json; charset=UTF-8添加到方法响应标头中,而不是依赖于从请求标头中保留的此值。

Method Response Content Setting

© www.soinside.com 2019 - 2024. All rights reserved.