Я недавно начал работать с AWS. Я интегрировал AWS Amplify, используя пулы пользователей cognito для управления пользователями (вход в систему и регистрация), и все прошло отлично (пул пользователей обновляется всякий раз, когда регистрируется новый пользователь). Теперь я добавил триггер подтверждения Cognito Post, чтобы сохранить зарегистрированную электронную почту в базе данных, и вот мой триггер codevar mysql = require ('mysql');
var config = require('./config.json');
var pool = mysql.createPool({
host : config.dbhost,
user : config.dbuser,
password : config.dbpassword,
database : config.dbname
});
exports.handler = (event, context, callback) => {
let inserts = [event.request.userAttributes.email];
context.callbackWaitsForEmptyEventLoop = false; //prevents duplicate entry
pool.getConnection(function(error, connection) {
connection.query({
sql: 'INSERT INTO users (Email) VALUES (?);',
timeout: 40000, // 40s
values: inserts
}, function (error, results, fields) {
// And done with the connection.
connection.release();
// Handle error after the release.
if (error) callback(error);
else callback(null, results);
});
});
};
всякий раз, когда пользователь регистрируется и подтверждает его электронная почта этот триггер вызывает и выдает мне эту ошибку "Неузнаваемый лямбда-выход Cognito" . Несмотря на то, что это выдает ошибку в фоновом режиме, моя БД вставляется с новым зарегистрированным адресом электронной почты, но я не могу перенаправить свою страницу из-за этого. Любая помощь будет оценена. Спасибо
Аравинд