如何解决护照.serializeUser(User.serializeUser());在 User.serializeUser()
我在 Passport.serializeUser(User.serializeUser()) 行的 User.serializeUser() 下有这个错误;在 auth.route.ts 里面是问题 am=nd 我试了很多次在互联网上搜索这个问题,但我找不到任何可以帮助的东西 如果你能提供帮助,它对帮助者将非常有帮助 这是我的代码
index.ts
require('dotenv').config();
import express from 'express';
import bodyParser from 'body-parser';
import authRoute from './routes/auth.route';
import './services/mongodb.service';
const app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use('/auth',authRoute);
const port = process.env.PORT;
app.listen(5000,() => console.log(`server start at ${port}`));
user.model.ts
import { Schema,Document,model,PassportLocalSchema } from 'mongoose';
import passportLocalMongoose from 'passport-local-mongoose';
type Role = 'Admin' | 'Pit Scouter' | 'Techni Scouter' | 'None';
export interface IUser extends Document{
name: String;
email: String;
password: String;
role: Role;
lastLogin?: Date;
}
const UserSchema = new Schema({
name: {type: String,required: true},email: {type: String,required: true,unique: true},password: {type: String,role: {type: String,rquired: true},lastLogin: {type: Date}
});
UserSchema.plugin(passportLocalMongoose,{
usernameField: 'email'
});
export default model<IUser>('User',UserSchema as PassportLocalSchema);
auth.route.ts
import { Router } from 'express';
import _ from 'lodash';
import session from 'express-session';
import passport from 'passport';
import User,{ IUser } from '../models/user.model';
const router = Router();
router.use(session({
secret: String(process.env.SECRET),resave: false,saveUninitialized: false
}));
router.use(passport.initialize());
router.use(passport.session());
passport.use(User.createStrategy());
passport.serializeUser(User.serializeUser());
passport.deserializeUser(User.deserializeUser());
router.post('/register',(req,res) => {
});
router.post('/login',res) => {
});
router.post('/logout',res) => {
});
export default router;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。