我有一个由干邑的customMessage触发的lambda脚本。它应该自定义我的认证电子邮件模板。除了AdminCreateUser
之外,它对所有事件都很有效。
因此,这是一个简短的问题,为什么它不起作用?
const sign_up_message = async(event) => {
let template = templateGenerator(templates.MAIN, templates.CONFIRM_SIGN_UP);
let code = event.request.codeParameter;
event.response = {
emailSubject: "Jouw verificatiecode voor de app",
emailMessage: mustache.render(template, {
title: "Bevestig je account",
preHeader: "Bevestig je account met de verificatiecode",
s3Bucket: process.env.S3_BUCKET,
activationCode: code
})
}
return event
}
const admin_create_user_message = async(event) => {
let template = templateGenerator(templates.MAIN, templates.ADMIN_CREATE_USER);
let email = event.request.usernameParameter;
let code = event.request.codeParameter;
event.response = {
emailSubject: "Je account bij financiallease.nl is hersteld",
emailMessage: mustache.render(template, {
title: "Je account bij financiallease.nl is hersteld",
preHeader: "Wachtwoord resetten is verplicht",
s3Bucket: process.env.S3_BUCKET,
username: email,
})
}
return event
}
const resend_code_message = async(event) => {
let template = templateGenerator(templates.MAIN, templates.RESEND_CODE_MESSAGE);
let code = event.request.codeParameter;
event.response = {
emailSubject: "Jouw verificatiecode voor de app",
emailMessage: mustache.render(template, {
title: "Bevestig je account",
preHeader: "Bevestig je account met de verificatiecode",
s3Bucket: process.env.S3_BUCKET,
activationCode: code
})
}
return event
}
exports.handler = async(event) => {
switch (event.triggerSource) {
case "CustomMessage_SignUp": //Sign-up trigger whenever a new user signs him/herself up.
return sign_up_message(event)
case "CustomMessage_AdminCreateUser": //When the user is created with adminCreateUser() API
return admin_create_user_message(event)
case "CustomMessage_ResendCode": //When user requests the code again.
return resend_code_message(event)
case "CustomMessage_ForgotPassword": //Forgot password request initiated by user
return forgot_password(event)
case "CustomMessage_UpdateUserAttribute": //Whenever the user attributes are updated
return update_user_attribute_message(event)
case "CustomMessage_VerifyUserAttribute": //Verify mobile number/email
return verify_user_attribute(event)
case "CustomMessage_Authentication": //MFA authenitcation code.
return authenitcation_message(event)
default:
return event
}
};
当我在本地测试它时,我得到了正确的模板。一旦它在云中。我将得到默认的认知模板:
正如您所看到的,主题被更改了,但是主体仍然是AWS的缺省值。这是怎么回事?有什么帮助吗?
发布于 2022-11-07 09:54:15
此问题是因为模板预期具有{{ code }}变量,该变量需要向用户发送临时密码。我只是将这个变量作为隐藏标记添加到我的自定义模板中。
https://stackoverflow.com/questions/74136127
复制相似问题