const express=require('express');
const app=express();
******
const passport=require('passport');
const LocalStrategy=require('passport-local').Strategy;
//requiring user route
const userRoutes=require('./routes/users');
//requiring user model
const User=require('./models/usermodel');
dotenv.config({path:'./config.env'});
//middleware for session
***********
//passport middleware
app.use(passport.initialize());
app.use(passport.session());
следующие 3 строки показывают ошибку, что «authenticate» не является функцией
passport.use(new LocalStrategy({usernameField:'email'},User.authenticate()));
passport.serializeUser(User.serializeUser());
passport.deserializeUser(User.deserializeUser());
после удаления выше 3 строк сервер запускается, но не получает аутентификацию
вот файл usermodel
const mongoose=require('mongoose');
const passportLocalMongoose=require('passport-local-mongoose');
let userSchema=new mongoose.Schema({
name:String,
email:String,
password:{
type:String,
select:false
}
});
userSchema.plugin(passportLocalMongoose,{usernameField:'email'});
module.exports=mongoose.model('User',userSchema);