Firebase Admin SDK - Current Logged In User - Nodejs

醉酒当歌 提交于 2019-12-05 05:36:40

问题


How do i get currentUser in firebase admin SDK. In client SDK we can use

onAuthStateChanged() or firebase.auth().currentUser()

In NodeJs Server.js file firebase admin SDK onAuthStateChanged() Do not work, what should work here?

Basically i want only logged in users to access my innerPages so i am using express,nodejs app.get method to create routes.

app.get('/', authenticationRequired ,function(req,res){
    res.sendFile(path.join(__dirname+'/index.html'));
});

And trying to write authenticationRequired method (returns false or true depending on if user is logged in).


回答1:


The Firebase Admin SDK does not inherently know what user is using your Express web app. You will need to implement code for this. If you're already using Firebase Authentication in the web app, this takes these steps:

  1. Retrieve the user's ID token on the client

    You can get a user's ID token by using the firebase.auth().currentUser.getIdToken() method.

  2. Pass this token from the client to the server

  3. Verify the token on the server

    The user ID token can be verified using the admin.auth().verifyIdToken(idToken) method. On success it will return a promise with the decodedToken, otherwise it will return a rejected promise.



来源:https://stackoverflow.com/questions/45215019/firebase-admin-sdk-current-logged-in-user-nodejs

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!