export function* login(auth, action){
try{
const {signInWithEmailAndPassword} = auth
const {email, password} = action.user
const user = yield call([auth, signInWithEmailAndPassword], email, password)
const {ra} = user.user
yield auth.verifyIdToken(ra)
.then(function(decodedToken) {
let uid = decodedToken.uid
console.log(uid)
}).catch(function(error) {
console.log('error no token')
})
/*
axios.post('/api/token', { i really need to call a cloud function?
ra
}).then(data => data.data)
*/
yield put(ActionCreator.signinSuccess(user.user))
}catch({message}){
yield put(ActionCreator.signinFailure("Dind't have possible do login"))
}
}
Мое сомнение заключается в следующем: когда я вхожу в базу данных FireBase, я получаю токен, который остается в переменной 'user.user.ra'.Чтобы иметь возможность использовать этот токен в моих запросах к базе данных Firebase в реальном времени, нужно ли мне отправлять этот токен в облачную функцию, чтобы выполнить проверку, или я могу использовать какой-то собственный метод для этого?На сайте Firebase у вас есть метод admin.auth().VerifyIdToken(idToken)
, чтобы выполнить эту проверку, но я не могу использовать его в своей саге.Как мне быть?