我使用 Firebase Auth 进行用户验证,并希望在用户删除或禁用其帐户之前验证用户密码。如何执行?
我试过下面的代码,但它似乎不起作用。
unregisterUser = (payload) => {
console.log('unregisterUser payload', payload)
return firebase.auth().signInWithEmailAndPassword(payload.email, payload.password)
.then( (user) => {
//Success
console.log('signInWithEmailAndPassword ok', user)
console.log('signIn success')
return Promise.resolve(true)
})
.catch( (error) => {
//Fail
console.error('signInWithEmailAndPassword error', error.code, error.message)
console.error('error', error)
return Promise.reject(error)
})
})
我得到的唯一控制台注销是
unregisterUser payload Object { uid: "ABCDEFG12345", password: "111" }
我已阅读 the documentation但似乎找不到任何其他方法来检查用户密码。
The documentation states我应该首先再次进行身份验证,然后在 firebase.User.delete
之前调用 firebase.User.reauthenticateWithCredential
。
如何做到这一点?
亲切的问候/K
最佳答案
我找到了正确的方法!
const user = firebase.auth().currentUser
const credential = firebase.auth.EmailAuthProvider.credential(payload.email, payload.password)
user.reauthenticateWithCredential(credential)
.then((result) => {
console.log('result', result)
// ...
})
.catch((error) => {
console.log('error', error)
console.log('code', error.code)
// ...
})
/K
关于javascript - 删除帐户前在 Firebase Auth 中验证用户密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60097797/