如果您在使用AWS Cognito时遇到了此问题,可能需要执行以下步骤:
在AWS Cognito Console中,转到Triggers菜单,然后单击Custom message调用。
选择自定义的代码以处理自定义消息。
如果您使用的是Node.js,请检查您编写的代码是否正确处理参数。
以下是一个示例Lambda函数,它使用Node.js来处理成功发送邮件的场景:
exports.handler = async (event, context) => { console.log('Received event:', JSON.stringify(event, null, 2)); let response = { statusCode: 200 }; let message = event.request; let userAttributes = event.userAttributes; console.log('message =', message); console.log('userAttributes =', userAttributes); if (message && message.codeParameter && message.codeParameter.length !== 0) { const user = userAttributes.email; const passcode = message.codeParameter; console.log('user =', user); console.log('passcode =', passcode); // send email using SES and Nodemailer const nodemailer = require('nodemailer'); let transporter = nodemailer.createTransport({ SES: new AWS.SES({ apiVersion: '2010-12-01' }) }); let mailOptions = { from: 'noreply@example.com', to: user, subject: 'Verification code for Example App', html: '
Your confirmation code is ' + passcode + '.
This code will expire in 10 minutes.
' }; await transporter.sendMail(mailOptions); } else { console.log('No passcode in message.'); } console.log('Returning event:', JSON.stringify(event, null, 2)); context.done(null, event); return response; };如果您正在使用其他编程语言,请确保代码正确处理并解析参数。确保代码中没有语法问题,并且所有必需的包都已正确导入。