node中怎么使用session

Posted ranyihang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了node中怎么使用session相关的知识,希望对你有一定的参考价值。

1.安装包
需要安装express-session的包,还有cookie-parser
npm install express-session

npm install cookie-parser

 

2.引入包

var express=require("express")
var app=express()

//引用session
var session=require("express-session");
var cookieParser=require("cookie-parser")

 

3.开启cookie并且配置session的内容
app.use(cookieParser())

// express中是把session信息存储在内存中
// 配置session
app.use(session({
    secret:"dsafsafsf", //设置签名秘钥 内容可以任意填写
    cookie:{ maxAge:80*1000 }, //设置cookie的过期时间,例:80s后    session和相应的cookie失效过期
    resave:true, //强制保存,如果session没有被修改也要重新保存
    saveUninitialized:false //如果原先没有session那么久设置,否则不设置
}))

 

4.设置session里面的内容

app.get("/add",function(req,res){
    //往session里存储数据
    req.session.name=jack; //loginok:可以是任意内容,可以为true或false
    res.send("添加成功")
})

 

5.读取session里面的内容

//读取session
app.get("/select",function(req,res){
    //查看session
    console.log(req.session)
    res.send("查询成功")
})

 

6.删除session
app.get("/del",function(req,res){
    req.session.destroy();
    res.redirect("http://www.baidu.com"); //删除成功后转到百度页面
    res.send("删除成功")
})

 

7.监听端口

app.listen(8080);

node中的session是将值存储在内存中了,不能直接在浏览器中进行查看;

所以将session再写入到cookie中,再浏览器中查看到的就是session存储的时候对应的文件名

 

以上是关于node中怎么使用session的主要内容,如果未能解决你的问题,请参考以下文章

Node.js JavaScript 片段中的跳过代码

Node.js刷新session过期时间

js文件中怎么取session的值?

跨域时session丢失问题的解决

C#-WebForm-★内置对象简介★Request-获取请求对象Response相应请求对象Session全局变量(私有)Cookie全局变量(私有)Application全局公共变量Vi(代码片段

在 Node 中使用 MemoryStore 存储会话数据,类似于 PHP 中的 $_SESSION['data'] = value