gpt4 book ai didi

node.js - Firebase,如何将身份验证服务与 node.js RESTapi 后端一起使用

转载 作者:太空宇宙 更新时间:2023-11-03 23:18:44 25 4
gpt4 key购买 nike

我是一名全栈 Java 脚本开发人员。

我有一个项目,前端是使用vue.js开发的。

后端使用node.js Express框架进行开发。我的后端也是 RESTapi。

自从我的前端 UI 设计完成后,我创建了一个 fire-base 项目并托管它。托管前端部分非常简单。

我的后端还没有身份验证部分。我想在这个项目中尝试 fire-base auth 服务。

我进行身份验证的正常方式是这样的。

  1. 将详细信息传递给后端以创建用户帐户。
  2. 后端创建一个用户帐户。
  3. 然后,当用户尝试记录凭据时,凭据将被传递到后端并从后端释放 token
  4. 该 token 存储在用户浏览器的临时内存中,并附加到他传递到后端的每个请求中。
  5. 后端验证 token 并授予对资源的访问权限。

这是我所知道的正常流程。

当我使用 fire-base 进行项目的身份验证部分时,我无法理解这个正常流程如何改变。

如何使用 Firebase 达到我的身份验证要求?

最佳答案

有两种情况。

首先,您在后端省略用户创建部分,并使用 Firebase 身份验证在前端创建用户帐户。该文档包含帮助您入门的一切内容:https://firebase.google.com/docs/auth/web/start例如。使用电子邮件和密码身份验证时:

firebase.auth().createUserWithEmailAndPassword(email, password).catch(function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
// ...
});

之后登录:

firebase.auth().signInWithEmailAndPassword(email, password).catch(function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
// ...
});

记住:

A Firebase User has a fixed set of basic properties—a unique ID, a primary email address, a name and a photo URL—stored in the project's user database, that can be updated by the user (iOS, Android, web). You cannot add other properties to the Firebase User object directly; instead, you can store the additional properties in your Firebase Realtime Database.

来自https://firebase.google.com/docs/auth/users

其次,您可以通过后端使用 nodejs 中的 firebase-admin 创建用户帐户来路由用户创建。登录请求将从前端直接发送到 firebase (而不是发送到后端)。所以后端只是用于用户创建/管理。

关于node.js - Firebase,如何将身份验证服务与 node.js RESTapi 后端一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52124576/

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