首页 > 解决方案 > 使用 AWS API Gateway 访问原始 URL

问题描述

是否可以使用 AWS API Gateway(和 Lambda)访问原始 url?

或者,是否可以访问原始的、未解码的查询字符串参数?

我们正在与第三方服务集成,该服务调用我们的 API 并对来自 Windows-1252 的查询字符串参数进行编码。(例如,芬兰字母 Ä 编码为 %C4 而不是 %C3%84)。API Gateway 似乎会自动解码查询字符串参数并假定 UTF-8,这意味着 Ä(以及 Ö 和 Å)会导致 \ufffd。

供参考:https ://www.w3schools.com/tags/ref_urlencode.asp

标签: amazon-web-servicesaws-lambdaaws-api-gateway

解决方案


妈的,看来真的不行了……

我开始写如何使用Lambda 代理集成event.queryStringParameters但这会将数据解析为键值对象。

然后我在 API Gateway 中走上了映射模板的道路,但似乎没有任何属性可以显示整个查询字符串。

尽管我不希望这是真的,但我只能得出结论,这是不可能的……

我认为您最好的选择是在客户端将参数编码为 base64,然后在 Lambda 函数中使用Object.keys(event.queryStringParameters)[0].


推荐阅读