gpt4 book ai didi

rest - Firebase 身份验证 + 自己的 API

转载 作者:行者123 更新时间:2023-12-04 19:54:26 26 4
gpt4 key购买 nike

是否可以只使用 firebase auth,然后使用自己的数据库创建自己的 api?

所以我编写了一个 REST API,它使用 firebase token 进行身份验证。

谢谢!

最佳答案

这取决于您将用于后端 API 的技术。有一个Firebase Admin SDK ,这是针对 Java、Python 和 Node 开发人员的,但我认为您正在寻找的功能仅在 Node SDK 中可用(尽管我相信有解决方法)。

这种工作方式是,在您的用户在客户端登录后,他们可以使用 firebase.auth().currentUser.getIdToken() 请求 token 。然后可以将其传递给您的后端,然后可以对其进行验证,请参阅下面的示例,了解如何使用 Node 和 Restify 来完成。

    const server = restify.createServer({});
server.use(validateJwt);

function validateJwt(req, res, next) {

if(!req.headers.token){
//reject
}
admin.auth().verifyIdToken(req.headers.token).then(decodedToken=>{
console.log(`token for user ${decodedToken.sub} valid`);
admin.auth().getUser(decodedToken.sub).then(user=>{
console.log(`fetched user ${user.email}`);
next();
}).catch(err=>{
res.send(500, 'the user with the ID does not exist in firebase');
})
}).catch(err=>{
console.log(`token validation failed: ${err}`);
res.send(401, 'authentication failed')});
}

关于rest - Firebase 身份验证 + 自己的 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42147168/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com