使用之间有什么区别
admin.auth().verifyIdToken()
和admin.auth().createSessionCookie() + admin.auth().verifySessionCookie()
用于身份验证,我应该在Express REST API中使用哪个?
此外,verifyIdToken是否已经创建了一个本身可以在每次调用时刷新的会话?验证会话cookie是否也一样?
答案 0 :(得分:0)
您创建会话以在客户端设备上获取令牌,并在服务器/云上使用验证令牌。
我从当前用户那里获取令牌,然后将其发送到Firebase云功能端点进行验证。
端点
import * as admin from 'firebase-admin'
const DEPLOYED = false;
admin.initializeApp()
const ValidateToken = (request: any, response: any) => {
const params = {
a: request.body.token, // Client Validation
}
const ValidateToken = admin.auth().verifyIdToken(params.a).catch((error) => { throw { Message:error }});
return Promise.all([ValidateToken]).then((res: any) => {
return DEPLOYED ? res : response.status(200).json(res);
}).catch(error => {
return DEPLOYED ? error : response.status(400).json(error);
});
}
export default ValidateToken;