我正在尝试学习Lambda,但我正在努力使用一个简单的函数,该函数将字符串作为输入参数,并将其大写:
它是用C#编写的。
public class Function
{
public string FunctionHandler(string input, ILambdaContext context)
{
return input?.ToUpper();
}
}
然后我用get请求设置一个API网关。它具有针对集成请求的映射模板,如下所示:
{
"input":$input.params("text")
}
我正在尝试在url上调用它:
https://xxxxxxx.execute-api.xxxxxxx.amazonaws.com/Prod?test=hello
但是我返回了错误:
{ “ message”:“无法将请求正文解析为json:意外字符(\'} \'(代码125)):在[Source:(byte [])\\ {\ n \ n \” input \“:\ n \ n} \”;行:5,列:2]“}
答案 0 :(得分:0)
正如Joaofs在评论中所建议的那样,解决方法是使输入到我的函数处理程序中的类型复杂。然后它开始神奇地工作。
由于某种原因,传递原始字符串在我的本地机器上运行正常(使用SAMS测试工具),但是在AWS内使用它时不起作用。
这是我的新示例代码:
public class Employee
{
public string Name { get; set; }
}
以及员工类型定义:
{{1}}