Wie zu erstellen "Berechtigung" Objekt erforderlich von FB-web-Benutzer.die Authentifizierung () - Methode?
Die (unklar) Beispiel in der neue docs:
var user = firebase.auth().currentUser;
var credential;
//Prompt the user to re-provide their sign-in credentials
user.reauthenticate(credential).then(function() {
Mit der v3 FB-client, wie sollte ich diese credential
Objekt?
Habe ich versucht:
reauthenticate(email, password)
(wie die login-Methode)reauthenticate({ email, password })
(die docs noch ein argument nur)
Kein Glück 🙁
PS: ich zähle nicht die Stunden vergeblicher Suche nach relevanten Informationen in der neuen docs... ich vermisse so sehr die fabelhafte firebase.com docs, wollte aber wechseln zu v3 für FB.Speicher...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Habe ich es geschafft, damit es funktioniert, docs, sollten aktualisiert werden, um diese für die nicht wollen, verbringen zu viel Zeit in die vollständig-aber-schwer-zu-Lesen-Referenz.
Den credential-Objekt wird wie folgt erstellt:
var currentCredential = firebaseAuth.EmailAuthProvider.credential(vm.currentAuth.email, vm.oldPassword); vm.currentAuth.reauthenticate(currentCredential) .then(function() { Database.updateUserPassword(vm.newPassword); }, function(error) { console.error('[Account]', error); });
updatePassword
ist einUser
Methode. Also in deinem code-ich denke, das wäre:firebase.auth().currentUser.updatePassword(vm.newPassword)
. Seien Sie auch vorsichtig in Ihrem code, wenn Sie verwenden, verspricht oder Rückrufe, die nicht wissen, haben Sie es gleich denn code in SO Kommentare ist ziemlich schwer zu Lesen.firebase.auth().currentUser.reauthenticate(credentialsObject).then(function() { return firebase.auth().currentUser.updatePassword(newPassword); }).then(function() { /* We're done here */ }).catch(function(error) { /* deal with error here */ });
Vollständige Antwort - kann man Folgendes tun:
Bitte beachten Sie, dass
reauthenticateWithCredential
ist die aktualisierte version vonreauthenticate()
Ich bin damit einverstanden, dass die Dokumentation nicht ziemlich eindeutig. Aber schaut man ein wenig tiefer auf die API-Referenz, die ich gefunden FB.auth.AuthCredential und diese und ich denke, Sie sollten schauen, um es zu übergeben, um
reauthenticate()
.Ich vermute hier, aber ich würde zunächst versuchen, sich die
firebase.auth()
zu sehen, wenn escredential
Objekt.Ich nehme an, es wird wie folgt Aussehen: