node.js的cookie和session模块

express中res负责设置cookie,req负责识别cookie

cookie

var express = require("express");
var cookieParser = require("cookie-parser");

var app =  express();
app.use(cookieParser());

app.get("/", function (req, res) {
    //maxAge在cookie中是以毫秒显示
    res.send("猜你喜欢" + req.cookies.mudidi);
});

//将访问的mudidi参数存在cookie中
app.get("/gonglue", function (req, res) {
    var mudidi = req.query.mudidi;
    var mudidiarry = req.cookies.mudidi || [];
    mudidiarry.push(mudidi);
    res.cookie("mudidi", mudidiarry, {maxAge:40000, httpOnly:true});
    res.send(mudidi + "旅游攻略");
});

app.listen(3000);

session(会话)

var express = require("express");
var app = express();
var session = require("express-session");

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

app.get("/", function (req, res) {
    if(req.session.login){
        res.send(req.session.username);
    } else {
        res.send("你没有登录");
    }
});

app.get("/login", function (req, res) {
    req.session.login = true;
    req.session.username = "考拉";
    res.send("你已经成功登录");
});

app.listen(3000);


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
mini-session是用于node.js的极简版session模块,非持久化。它的数据存储在内存里,因此,如果Web服务器进程重新启动,session将会丢失。所以,这个模块主要针对小网站,并没有太多的数据存储在session中。安装在使用 mini-session 之前, 你需要先安装 Cookies 包。npm install cookies然后npm install mini-sessionDemovar http = require("http"); var Cookies = require("Cookies"); var Session = require("mini-session"); http.createServer(function(req, res){     var cookies = new Cookies(req, res);     var session = new Session(cookies);//init session with cookies     console.log("sessionId = "   session.sessionId);     session.set("userId", 123);     session.set("userName", "Jhon");     console.log("after set, session data is :");     session.dump();     console.log("session.get(\"userId\") = "   session.get("userId"));     session.abandon();     console.log("after abandon, session data is :");     session.dump();     res.writeHead(200, {"Content-Type":"text/html"});     res.end("<h1>session test done!</h1>"); }).listen(8500); console.log("Server started : http://localhost:8500");控制台输出:Server started : http://localhost:8500 sessionId = f4e4f42b130bfb4fb663ee67122c02b8 after set, session data is : { count: 1,   f4e4f42b130bfb4fb663ee67122c02b8: { count: 2, userId: 123, userName: 'Jhon' } } session.get("userId") = 123 after abandon, session data is : { count: 0 } 标签:minisession

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值