- . , , , , firebase.auth().currentUser , .
, .
, " XXX", , , .
- Firebase , firebase, 100% .
, React , .
- cookie, firebase
- cookie,
- cookie
:
const setAppCookie = () => firebase.auth().currentUser &&
firebase.auth().currentUser.getToken().then(token => {
cookies.set('token', token, {
domain: window.location.hostname,
expire: 1 / 24,
path: '/',
secure: true
});
});
const unsetAppCookie = () =>
cookies.remove('token', {
domain: window.location.hostname,
path: '/',
});
fbAuth.onAuthStateChanged(user => {
if (!user) {
return;
}
setAppCookie();
setInterval(setAppCookie, 3500);
});
[...]
unsetAppCookie();
:
app.use(cookieParser());
const { token } = req.cookies;
if (!token) {
}
console.log('Verifying token', token);
firebase.auth().verifyIdToken(token)
.then(decodedToken => {
const uid = decodedToken.sub;
console.log('User is authenticated for this request', uid);
})
.catch(err => {
console.error('WARNING token invalid or user not found', err);
});