美文网首页
express session 会话管理

express session 会话管理

作者: l4u | 来源:发表于2018-08-25 16:48 被阅读0次

    安装session 包并引入:

    const session = require('express-session') // session 插件

    const Store = require('express-mysql-session') // session 插件

    入口设置session:

    app.use(session({

      secret: 'vue',

      name: 'SESSION', // 这里的name值得是cookie的name,默认cookie的name是:connect.sid

      cookie: {maxAge: 24 * 3600}, // 设置maxAge是80000ms,即80s后session和相应的cookie失效过期

      resave: true, // 是否允许session重新设置

      rolling: true, // 是否按照原设定的maxAge值重设session同步到cookie中

      saveUninitialized: false, // 是否设置session在存储容器中可以给修改

      store: new Store({

        host: 'localhost',

        user: 'root',

        password: 'root',

        port: '3306',

        database: 'test'

      })

    }))

    全局请求添加验证:

    app.all('*', function (req, res, next) {

      var url = req.originalUrl// 获取浏览器中当前访问的nodejs路由地址

      if (url === '/api/user/login' || (url === '/api/user/addUser') || (url === '/api/user/upload')) {

        next()

      } else {

        console.log('req.session.sid', req.session.sid)

        if (req.session.sid) { // 判断用户是否登录

          next()

        } else {

          res.json({

            responseCode: 1000,

            responseMsg: '暂无权限'

          })

        }

      }

    })

    调接口使用:

    // 查看内容列表

    router.get('/getList', (req, res)=> {

    var user = req.session.sid

      console.log('user', user)

    var sql = $sql.getData.getList + $sql.getData.getCount

      var params = req.query

    console.log('getListparams', params)

    console.log('getListparamsid', req.id)

    conn.query(sql, [user, parseInt((params.pageNumber - 1)* params.pageSize), parseInt(params.pageSize), user], function (err, result) {

    console.log('result', JSON.stringify(result))

    if (err) {

    console.log(err)

    }

    if (result.length) {

    jsonWrite(res, {list: result[0], total: result[1][0].total|| 0})

    }

    })

    })

    相关文章

      网友评论

          本文标题:express session 会话管理

          本文链接:https://www.haomeiwen.com/subject/kdygiftx.html