如何将JSON列表发送到AWS Lambda函数

ve7v8dk2  于 2023-03-09  发布在  其他
关注(0)|答案(2)|浏览(147)

我正在尝试发送一个JSON列表,以便在Lambda函数中进行处理。
我在handleRequest上尝试了几次覆盖,但我一直未能成功地让Lambda看到它。
我试过...

public String handleRequest(List<String> events, Context context)

并尝试在Lambda函数的Test选项卡中发送字符串格式的JSON(将被嵌套),如下所示...

[
  jsonString1,
  jsonString2
]

但是甚至在执行任何Lambda代码之前就发生了json异常失败。不确定是否发生了某种反序列化导致了该问题。
最终,我希望按照文档中特别提到的那样做...
https://docs.aws.amazon.com/lambda/latest/dg/java-handler.html
List<Integer>List<String>List<Object>等等。
事件是一个JSON数组。运行库将其反序列化为指定类型或接口的对象。

hgncfbus

hgncfbus1#

event必须是有效的JSON。
如果希望发送多条JSON记录,可以在外部JSON中提供一个列表:

{
  my_list: [
    {"name": "This is JSON 1"},
    {"name": "This is JSON 2"},
    {"name": "This is JSON 3"}
  ]
}
hfyxw5xn

hfyxw5xn2#

我在使用AWS Lambda/spring云函数时遇到了类似的问题-由于反序列化问题,我们无法将JSON数据发送到Lambda,因此请尝试将数据作为散列表或Pojo类发送,有关详细信息,请参见AWS Can not deserialize instance of java.lang.String out of START_OBJECT
检查我在Github中的代码,希望它能帮助您解决这个问题。
https://github.com/ARNR-CODE/master/blob/main/awspring/src/main/java/se/WeatherForCast/awspring/AccuWeatherHandler.java

相关问题