nodejs 之 session的使用

nodejs 之 session的使用

1.适用架构:前后端不分离项目

2.使用

· 引入express-session依赖

npm i express-session -save

· 引入session中间件

const session = require('express-session')
// session 中间件
app.use(session({
  secret: 'laotunan',   // secret  属性的值可以为任意字符串
  resave: false,            // 固定写法
  saveUninitialized: true, // 固定写法
}))

· 设置用户session信息

const express = require('express')
// 登录
router.post('/api/login', (req, res) => {
  const name = req.body.username;
  const password1 = req.body.password1;
  let sql = `select * from userinfo where name='${name}'`
  con.sqlConnect(sql, (err, data1) => {
    if (!data1.length) {
      return res.send({ code: 400, msg: '用户不存在' })
    } else {
      let sql = `select * from userinfo where password1='${password1}' and  name='${name}'`
      con.sqlConnect(sql, (err, data) => {
        if (!data.length) {
          return res.send({  code: 400, msg: '登录密码错误'  })
        }
        req.session.user = data    // 将用户信息存储到session中
        req.session.islogin = true      // 将用户的登录状态存储到session中
        res.send({ name: name, code: 200, msg: '登录成功', data: data  })
      })
    }
  })
}),

· 销毁用户session信息

// 退出
router.post('/api/logout', (req, res) => {
  // 清空session
  req.session.destroy()
  res.send({ code: 200, msg: '成功' })
})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Xie_bro777

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值