Express Session问题持久数据

时间:2019-05-11 19:17:51

标签: javascript node.js express

在查找所有帖子后,没有人解决我的问题,这真的很奇怪。 我只想将会话数据粘贴到每个请求(基本上是一个会话)上就可以使用。 只是快速会议的基础不适用于我,我真的不知道为什么

Vue,Node(Express,Mongoose),Mongodb

我的网站包json :(仅简短的依赖项)

   "dependencies": {
       "axios": "^0.18.0",
       "body-parser": "^1.19.0",
       "express": "^4.16.4",
       "express-session": "^1.16.1",
       "mongodb": "^3.2.3",
       "mongoose": "^5.5.6",
       "vue": "^2.6.6",
       "vue-router": "^3.0.1"
     },

我只想建立一个登录网站,除了我希望用户在登录时保持快递与对方联系的事实外,一切都可以正常工作

server.js

'''

   const express = require('express');
   const cookieParser = require('cookie-parser');
   const bodyParser = require('body-parser');
   const session = require('express-session');
   const loginModule = require('./routes/login.js');

   app.use(cookieParser());
   app.use(session({
     secret: 'keyboard cat',
     resave: false,
     saveUninitialized: true,
     cookie: {}
   }));
   app.use(bodyParser.json());

   loginModule(app);

'''

login.js

'''        //函数不干净,请记住一个测试

   async function loginHandler(req, res, next) {
     try {
       if (req.body.username && req.body.password) {
         const post = await loadCollection('login', 'ident');
         const response = await post.find({
              email: req.body.username, 
               mdp: req.body.password
         }).toArray();

         if (response.length !== 0){
           req.session.authenticated = true;
           res.json({
             _id : response[0]._id
           })
         }
         else {         
           res.status(401).send('Bad Username or Password')
         }
       } else {
         res.status(401).send('Bad Username or Password')
       }
     } catch (err) {
       console.log(err);
     }
   };

'''

我只想使用req.session.authenticated = true保持身份验证为true;

我尝试了req.session.saved(),设置了Cookie {secure:true}

如果有任何建议告诉我,几个月前,我开始了Web开发。谢谢您的时间:)

0 个答案:

没有答案