Node.js 如何使用firebase、angular和node进行costum身份验证?

Node.js 如何使用firebase、angular和node进行costum身份验证?,node.js,angular,firebase,Node.js,Angular,Firebase,所以我正在用我的应用程序向firebase过渡 但我在firebase网站上关于如何认证用户的所有信息中迷失了方向。 我可以在firebase上创建用户,我有一个节点项目 因此,我的问题是: 我需要如何做登录部分 我需要在我的应用程序中调用firebase.auth().signInWithEmailAndPassword()吗 我是否需要调用我的节点应用程序并在那里进行自动验证 如何检查用户是否已登录 如果你们知道一本很好的读物,我很感兴趣 登录 方法一检查登录状态 方法二检查登录状态 asy

所以我正在用我的应用程序向firebase过渡

但我在firebase网站上关于如何认证用户的所有信息中迷失了方向。 我可以在firebase上创建用户,我有一个节点项目

因此,我的问题是:

我需要如何做登录部分

我需要在我的应用程序中调用firebase.auth().signInWithEmailAndPassword()吗

我是否需要调用我的节点应用程序并在那里进行自动验证

如何检查用户是否已登录

如果你们知道一本很好的读物,我很感兴趣

登录

方法一检查登录状态

方法二检查登录状态

async loginStatus():Promise{
返回新承诺((解决、拒绝)=>{
const auth=firebase.auth()
auth.onAuthStateChanged(firebaseUser=>{
if(firebaseUser){
解析(真)
}否则{
解析(false)
}
})
})
}
异步checkLoginStatus(){
const isLoginSuccessed:boolean=wait this.loginStatus()
返回ISLOGINSACCESS;
}

希望这能有所帮助。

thx,这给了我更多的洞察力,在谷歌搜索了更多之后,我找到了我需要的东西!大脑袋
import { AngularFireAuth } from '@angular/fire/auth'
import { AngularFireDatabase, AngularFireList ,AngularFireObject } from '@angular/fire/database';
import { Router } from '@angular/router';
import * as firebase from 'firebase';

@Injectable({
  providedIn: 'root'
})
export class AuthService {


  constructor(private fbAuth: AngularFireAuth ,public router:Router , public db :AngularFireDatabase) {}

  login(email,password){
    this.fbAuth.signInWithEmailAndPassword(email,password)
    .then(async user =>{

        await localStorage.setItem('userData', user.user.refreshToken) 
        this.router.navigate(['home'])

    }).catch(error=>{
           console.error(error)
  }
  }
  
}
isAuth(){
  const luserData = localStorage.getItem('userData');

    // console.log(userData);
    if (luserData && luserData.length > 0) {
      return true;
    } else {
      return false;
    }
}

async loginStatus(): Promise<boolean> {
  return new Promise((resolve,reject) => {
    const auth = firebase.auth()
    auth.onAuthStateChanged(firebaseUser => {
      if(firebaseUser) {
        resolve(true)
      } else {
        resolve(false)
      }
    })
 })
}
  
async checkLoginStatus() {
  const isLoginSuccessed: boolean = await this.loginStatus()
  return isLoginSuccessed;
  }