松弛的削减命令通过概念关于Lambda(Python与Java)

0

的问题

我尝试连接一个松弛slash-命令Lambda(通过的概念关)。

我能够适应你好世界的蓝图(Python编写)在Lambda教程部分。 我设置了一个API网关,作为一个触发器,然后不得不松弛的职位的削减命令API的终点。 我不得不手动解base64体,然后使用parse_qs转换query string-喜欢后的身体变成一个词典,在那里我可以访问它就好了。

我的真实Lambda代码目前正在爪哇,但我已经开始与java的基本样本应用程序开发者指南。 我建立的程序,上载的罐子,并确认正确的处理程序是正在叫。 我设置了另一个API网关,并指出不同的松弛的削减命令在新endpoin. 它失败。

日志的样子:

java.lang.RuntimeException: An error occurred during JSON parsing
Caused by: java.io.UncheckedIOException: com.amazonaws.lambda.thirdparty.com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot deserialize instance of `java.lang.String` out of START_OBJECT token
 at [Source: (ByteArrayInputStream); line: 1, column: 1]

我猜这意味着松弛,是发送相同的查询串样论点,在后身体,并且由于某些原因,一些是期待JSON输入,而不仅仅是文本。 我不明白为什么Python处理好与建立一个事件的字典和Lambda解体后,而Java处理程序是永远不会得到所谓的,但是死亡之前,当试图deserialize后的身体、思考它的手机中。

两Lambda和API网设立了与通常违约,AFAICT.

amazon-web-services
2021-11-24 01:37:03
1

最好的答案

0

我解决了这个问题通过转换到使用HandlerStream的例子。 然后我就可以获得的"主体"的事件,Base64.decodeBase64它,然后解的形式参与UriParameterMap.分析。

然后我处理收到的文本,来自松弛削减命令,然后返回一串象,松弛的期望。

2021-12-05 17:48:35

其他语言

此页面有其他语言版本

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................