Nie mogę sobie chyba wyobrazić, jak zresetować obiekt Firebase Auth po wczytaniu go po raz pierwszy.Autoryzacja Firebase Auth nie jest aktualizowana po zresetowaniu hasła
Szukam wartości bool true
w auth.password.isTemporaryPassword
, która zmusza użytkownika do zresetowania hasła. Po wykonaniu przez użytkownika tej procedury i zresetowaniu, auth.password.isTemporaryPassword
pozostaje true
.
Jedynym sposobem, w jaki znalazłem to, jest zalogowanie użytkownika i ponowne zalogowanie, które odświeża obiekt auth.
Hearts
var ref = new Firebase(environment);
$firebaseAuth(ref)
.$authWithPassword({
email: email,
password: password
},sessionObj)
.then(function(authData) {
if (password.isTemporaryPassword === true) {
$state.go('resetpassword');
}
})
.catch(function(error) {
deferred.reject(error);
});
resetu:
$scope.reset.oldPassword = "oldPass";
$scope.reset.newPassword = "newPass";
$scope.reset.email = "usermail";
ref.changePassword($scope.reset, function(err) {
if(err) {
...
}
else {
$state.go('home')
}
})
password.isTemporaryPassword
pozostaje true
aż ponownie zalogować użytkownika, w którym wydaje się hacky.
Zamiast opisując swój kod, należy podać minimalny fragment, który reprodukuje problem do Twojego pytania. W takim razie będzie ci łatwiej pomóc. (patrz http://stackoverflow.com/help/mcve) –