Я пытаюсь сгенерировать username
автоматически за кулисами, чтобы при регистрации пользователям просто нужно было указать свой номер телефона, который затем можно будет изменить без изменения имени пользователя (основного идентификатора).
Следовательно, я знаю, что это может быть сделано за кулисами в клиенте, но я смотрю на это с помощью лямбда-триггера в Cognito, а именно PreSignUp_AdminCreateUser
источника триггера.Код работает хорошо, но я получаю сообщение об ошибке, что имя пользователя должно быть тем, которое было отправлено при вызове клиента на iOS .
Моя лямбда выглядит так:
"use strict";
exports.handler = function(event, context, callback) {
if (event.triggerSource === "PreSignUp_SignUp") {
// generate unique random username
var username = "";
var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
for (var i = 0; i < 16; i++) {
username += possible.charAt(Math.floor(Math.random() * possible.length));
}
console.log("Generated a unique username: " + username);
event.userName = username;
}
return callback(null, event);
};
Должно ли это быть возможным?Кто-нибудь делал что-то подобное для Cognito?