Я использую паспорт для входа пользователей в мое приложение. Я пытаюсь получить десериализованного пользователя через req.user на маршруты, отличные от моих маршрутов входа и регистрации, но я получаю значение "undefined". Я полагаю, что это потому, что мой интерфейс реагирования по какой-то причине не отправляет повара ie обратно на мой сервер. Буду признателен за любую оказанную помощь. Спасибо.
сервер. js
require('dotenv').config();
const express = require("express");
const mongoose = require("mongoose");
const cors = require("cors");
const cookieSession = require('cookie-session')
const passport = require("./Passport");
//const path = require("path");
const app = express();
app.use(cors());
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieSession({
maxAge: 24 * 60 * 60 * 1000,
name: 'session',
keys: ['key1']
}))
app.use(passport.initialize());
app.use(passport.session());
const PORT = process.env.PORT || 8080
mongoose.connect('mongodb://localhost:27017/accountsDB', { useNewUrlParser: true, useUnifiedTopology: true, useCreateIndex: true });
const transactionsRouter = require("./routes/transactions");
const fieldsRouter = require("./routes/fields");
const userRouter = require("./routes/user");
app.use('/transactions', transactionsRouter);
app.use('/fields', fieldsRouter);
app.use("/user", userRouter);
/*Serves the build folder that we had created */
/*if(process.env.NODE_ENV === "production"){
app.use(express.static( "accounts-frontend/build"));
app.get("*", (req,res) => {
res.sendFile(path.join(__dirname, "accounts-frontend", "build", "index.html"))
})
}*/
app.listen(PORT, () => {
console.log(`server has started successfully on ${PORT}`);
});
настройка паспорта со стратегиями
const passport = require("passport");
const User = require("../models/user.model")
passport.serializeUser(function (user, done) {
done(null, user.id);
});
passport.deserializeUser(function (id, done) {
User.findById(id).then(function (user) {
done(null, user);
})
})
// Here we will import all the strategies to our index file
const SignupStrategy = require("./signupStrategy");
const LoginStrategy = require("./loginStrategy");
// Then we will set the strategies up to be used by passport
passport.use("local-signup", SignupStrategy);
passport.use("local-login", LoginStrategy);
module.exports = passport;