我在node.js中的Lambda函数:
console.log('Loading function');
exports.handler = function(event, context) {
console.log('value1 =', event.key1);
context.succeed("Hello " + event.key1);
};
我想要一个客户端(我的笔记本电脑)发送一个包含值" world"这个lambda函数。该函数添加" Hello"并返回" Hello world"。 我使用带有curl的cmd并使用以下语句:
curl -X POST -d '{"key1":"world"}' https://blablablabla.execute-api.us-west-2.amazonaws.com/prod/helloworld2
但我只回复{"消息":"内部服务器错误"}
有什么想法吗?有没有其他方式发送"世界"值。也许在HTML文件中的javascript或Eclipse中的简单Java应用程序? lambda函数本身很好。我通过测试活动成功测试了它。
答案 0 :(得分:0)
你的功能似乎很好。但是你缺少cURL命令的Content-Type
标题。这样做:
curl -H "Content-Type: application/json" -X POST -d "{\"key1\": \"World\"}" https://blablablabla.execute-api.us-west-2.amazonaws.com/prod/helloworld2
中仔细检查此要求
更新:尝试使用此功能(我只添加了回调参数)
'use strict';
console.log('Loading function');
exports.handler = function(event, context, callback) {
console.log('value1 =', event.key1);
callback(null, {"Hello": event.key1});
};