После того, как пользователь регистрируется в моем приложении, на локальном сервере MySQL назначается идентификатор, который затем регистрируется как customData.id
в соответствующей учетной записи Stormpath.
Это работало до перехода на Okta (используя express-stormpath версии 3.2.0). После миграции и обновления до версии 4.0.0 тот же код больше не работает, и я не могу найти справку или документацию, чтобы узнать, что нужно изменить. Явных ошибок нет, но customData не отображается в новой учетной записи в разделе «профиль» и приводит к неопределенным результатам при вызове.
Соответствующие postRegistrationHandler
:
postRegistrationHandler: function(account, req, res, next) {
account.getCustomData(function(err, data) {
if (err) {
return next(err);
}
else {
var newaccount = {
email: account.email,
isgestore: isgestore,
stormpath_href: account.href,
dataiscrizione: new Date()
};
db.query('SELECT * FROM utenti WHERE email = "'+account.email+'";', function(err,check){
if(err) throw err;
if(check==''){
res.sendStatus(500);
} else {
db.query('UPDATE utenti SET ? WHERE email = "'+account.email+'";', newaccount, function(err,result){
if(err) throw err;
data.id = check[0].id;
data.save();
res.redirect('/regRedirect');
});
}
});
}
});
},
Миграция со Stormpath на Okta прошла успешно, и пользовательские данные были импортированы правильно. Проблема возникает только с недавно зарегистрированными учетными записями.