NodeJS Firebase验证令牌通过Firebase验证令牌-管理员错误

yshpjwxd  于 2023-02-08  发布在  Node.js
关注(0)|答案(2)|浏览(302)

嘿,我正在尝试从Firebase Admin验证用户令牌,然后根据Mongodb中的信息创建用户,但每次当我请求此端点时,我都会收到以下错误:

D:\React Course\Ecommerce\server\node_modules\firebase-admin\lib\auth\base-auth.js:421
        if (properties?.providerToLink) {
                       ^

SyntaxError: Invalid or unexpected token
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1180:10)

这是我的代码验证userToken

const express=require("express");
import admin  from "firebase-admin";

var serviceAccount = require("../FirebaseAdmin/Servicekey.json");

admin.initializeApp({
    credential: admin.credential.cert(serviceAccount),
  });

export const authcheck=async(req,res,next)=>{
try{ 
    const firebaseuser=await admin.auth().verifyIdToken(req.headers.authcheck);
    console.log(firebaseuser);
}catch(error){
    console.log(error);
}
}

有人能帮我解决这个问题吗?我尝试了所有可能的方法。这里是req. header

的控制台日志
这是从客户端,我请求我的端点

const createandupdateuser=async(authcheck)=>{
  await axios.post("http://localhost:5000/api/create-and-update-user",{},{
    headers:{
      authcheck,
    }
  })
  }
const handlesubmit=async(e)=>{
e.preventDefault();
try{
    setloading(true);
    const result=await signInWithEmailAndPassword(auth,email,password);
    const {user}=result;
    const Idtoken=await user.getIdTokenResult();
    createandupdateuser(Idtoken.token);
    dispatch({
      type:"LOGGED_IN_USER",
      payload:{
        email:user.email,
        token:Idtoken.token
      }
    })
    navigate("/");
}catch(error){
console.log(error)
swal(error.message);
setloading(false);
}
}

下面是调用的authcheck函数

const express=require("express");
const router=express.Router();
import {createandupdateuser} from "../controllers/auth"
const {authcheck} =require("../middlewares/index");

router.post("/create-and-update-user",authcheck,createandupdateuser);

module.exports=router;
u3r8eeie

u3r8eeie1#

您的代码中可能有隐藏字符。请复制您的代码并将其粘贴到纯文本编辑器中,然后删除任何垃圾文本。
如果您使用的是可视化代码,则可以打开“呈现空白”。
CTRL + SHIFT + P / CMD + SHIFT + P并搜索“渲染空白”,然后将其切换为打开

iecba09b

iecba09b2#

更新......我通过降级Firebase-admin版本解决了我的问题

npm i firebase-admin@10.3.0

相关问题