首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Express+Nodejs和使用Firebase的客户端之间的用户会话

Express+Nodejs和使用Firebase的客户端之间的用户会话
EN

Stack Overflow用户
提问于 2021-08-09 15:52:05
回答 1查看 66关注 0票数 0

使用Nodejs+Express和Firebase auth存储用户会话的常用方法是什么?我有Android和Ios应用程序,我想在上面使用相同的逻辑(稍后在web上也是如此),所以我会得到JWT令牌。我想使用该令牌作为请求的授权。此外,我希望保持用户会话,而不要求他们再次登录。我不知道该怎么做,我找到的所有Express会话资源都是关于web和cookies的主题。我遇到了可能将会话存储在MongoDb中的upon MongoConnection a library for Express,但是会话如何处理非web请求?谁能帮我澄清这一点,我知道我在这里遗漏了一点,因为肯定有一个简单的方法来验证传入的请求,也有一个用户不必每次都登录的会话。

最好,我希望有一种简单的方法来拥有需要JWT令牌访问的端点。除此之外,还有一个类似的会话。在Nodejs的Firebase Admin SDK中有一个验证令牌的功能,但在每次请求时都要手动检查令牌,这似乎真的很奇怪。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-09 16:36:44

我将后端和前端的会话完全分开处理,就像我主要制作RESTful apis一样。在前端,您可以随心所欲地处理会话,例如,您可以在用户使用firebase auth进行身份验证时启动会话,并根据firebase auth用户的属性设置用户角色。使用cookies,做任何你喜欢的事情。

然后在后端,在每个端点上只需解码令牌,验证它,检查用户是否有权访问他们正在请求的资源等。编写自己的中间件是很常见的,这样您就不必重复解码代码。有关此方法的更多信息,this可能会有所帮助。在每个请求上手动检查令牌并不奇怪,这是保证请求真实性的常见做法。希望这能对你有所帮助。

总而言之,将前端会话与后端完全分开。在后端的express服务器上,在任何受保护的端点上,解码并验证令牌,以确定用户是否有权访问资源。

使用firebase的后端会话不是一个好主意(因为它是无服务器的),最好是创建一个无状态的restful api。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68715033

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档