Функция AWS Lambda возвращает обработчик обработчика, отсутствующий в модуле 'index'
Рассмотрим следующий код -
function index(event, context, callback) {
//some code
}
exports.handler = index();
{
"errorMessage": "Handler 'handler' missing on module 'index'"
}
Это моя функция, которая имеет бизнес-логику. Мое имя файла javascript index.js
.
Всякий раз, когда я проверяю этот код на aws лямбда, он дает следующее log(failed)
.
Это скриншот сайта загрузки Amazon Lambda:
![введите описание изображения здесь]()
Ответы
Ответ 1
В export.handler
вы не ссылаетесь на функцию index
, а на результат ее выполнения. Я думаю, вы хотите экспортировать функцию.
let index = function index(event, context, callback) {
//some code
}
exports.handler = index;
Или, может быть, непосредственно
exports.handler = function index(event, context, callback) {
//some code
}
Ответ 2
Что вы можете сделать, так это объявить свою функцию как export.handler. Когда ваша функция экспортируется в лямбда, она поставляется с пространством имен.
exports.handler = function(event, context) {
//code
}
Вы можете игнорировать обратный вызов, если хотите быстрый код.