Вопрос задан уже здесь , но поскольку AngularFire обновляет свой API, предоставленное решение больше нельзя использовать.
Что я делаю, так это создаю новую учетную запись пользователя с адресом электронной почты/паролем, сохраняю этого пользователя в службе аутентификации Firebase и сохраняю дополнительную информацию в базе данных.
Однако в аутентификации у пользователя есть свой ключ как simplelogin:29, а в данных у каждого пользователя есть свой хешированный ключ как -JpwB9oUVkeT_XRdiX2V. Мне нужно, чтобы их ключи были одинаковыми.
Ниже приведен код для создания нового пользователя, зарегистрированного с помощью auth.$createUser, и сохранения дополнительной информации в пользовательской модели.
var ref = new Firebase('https://myapp.firebaseio.com/');
var auth = $firebaseAuth(ref);
auth.$createUser({
email: user.email,
password: user.password
}).then(function(regUser) {
var ref = new Firebase('https://myapp.firebaseio.com/users/')
var firebaseUser = $firebaseArray(ref);
var userInfo = {
key : regUser.uid, // ex: simplelogin:29
date : Firebase.ServerValue.TIMESTAMP,
firstname : user.firstname,
lastname : user.lastname,
email : user.email,
}; // user info
firebaseUser.$add(userInfo);
});
Это работает, но не так, как должно быть, так как ключ пользователя в аутентификации и данных все еще разные.