【发布时间】:2020-03-04 18:13:25
【问题描述】:
我已经在 express 中创建并结束了 /logout,并且我指示路由处理函数首先注销然后重定向到根页面。
index.js
const express = require('express');
const mongoose = require('mongoose');
const cookieSession = require('cookie-session');
const passport = require('passport');
const keys = require('./config/keys');
require('./models/User');
require('./services/passport');
const apiRoutes = require('./routes/apiRoutes');
const authRoutes = require('./routes/authRoutes');
mongoose.connect(keys.mongoUri, { useNewUrlParser: true, useUnifiedTopology: true });
const app = express();
app.use(
cookieSession({
maxAge: 30 * 24 * 60 * 60 * 1000,
keys: [keys.cookieKey],
})
);
app.use(passport.initialize());
app.use(passport.session());
app.use('/auth', authRoutes);
app.use('/api', apiRoutes);
const PORT = process.env.PORT || 5000;
app.listen(PORT, () => console.log(`Server is running at port ${PORT}`));
apiRoutes.js
> const router = require('express').Router();
>
> router.get('/logout', (req, res) => {
> req.logout();
> res.redirect('/'); });
>
> router.get('/current_user', (req, res) => res.send(req.user));
>
> module.exports = router;
当我点击注销按钮时,url 变为http://localhost:8080/api/logout,但它没有做任何其他事情。
我也检查了其他资源,看起来这是这样做的方法,但它不起作用。
我想在单击“注销”按钮时注销并重定向到根 url。
【问题讨论】:
标签: reactjs express passport.js