Envisagez de suivre le code -
function index(event, context, callback) {
//some code
}
exports.handler = index();
{
"errorMessage": "Handler 'handler' missing on module 'index'"
}
C'est ma fonction qui a une logique métier. Mon nom de fichier javascript est index.js
.
Chaque fois que je teste ce code sur aws lambda, il donne la suite log(failed)
.
Il s'agit d'une capture d'écran du site de téléchargement Amazon Lambda:
Dans export.handler
, vous ne faites pas référence à la fonction index
, mais au résultat de son exécution. Je suppose que vous voulez exporter la fonction elle-même.
let index = function index(event, context, callback) {
//some code
}
exports.handler = index;
Ou peut-être directement
exports.handler = function index(event, context, callback) {
//some code
}
Ce que vous pouvez faire est de déclarer votre fonction en tant que exports.handler. Lorsque votre fonction exporte vers lambda, elle est fournie avec l'espace de noms.
exports.handler = function(event, context) {
//code
}
Vous pouvez ignorer le rappel si vous voulez un code rapide.
Vous avez peut-être incorrectement spécifié votre gestionnaire comme "index.js" au lieu de "index.handler"