connect中間件session、cookie的使用方法分享
Connect是一個(gè)node中間件(middleware)框架。具體不表,看官網(wǎng)介紹 http://www.senchalabs.org/connect/
在app.js中配置下(必須放到app.use(routes);之前)
var connect = require("connect");
app.use(connect.cookieParser());
app.use(connect.session({ secret: 'jiami', cookie: { maxAge: 60*60*24*1000}}));
然后在控制器中使用
//設(shè)置
req.session.username="sess_username";
req.session.password="sess_admin";
req.session.your = {username:"sess_name",password:"sess_pwd"};
//使用
console.log(req.session.username);
console.log(req.session.your);
其它方法
//注銷session
req.session.destroy(function(err){
console.log(err);
})
//重新生成sid
req.session.regenerate(function(err){
console.log(err);
});
當(dāng)設(shè)置了session后,我們看到cookie中多了條sid,是為了記錄會(huì)話ID的
打印req.cookies和req.session對(duì)象
console.log(req.cookies);
console.log(req.session);
可以看到session是通過存了個(gè)connect.sid的方式來(lái)與客戶端會(huì)話的,不過session是存在內(nèi)存中的
二、cookie,官方文檔:(http://www.senchalabs.org/connect/cookieParser.html 這個(gè)文檔坑了我整整一天時(shí)間),費(fèi)話不表,下面的例子是哥試出來(lái)的,因?yàn)槲臋n上沒寫使用方法
設(shè)置
//設(shè)置cookie
res.cookie("user",{username:"cookie_name",password:"cookie_pwd"},{ maxAge: 60*60*24*1000,httpOnly:true, path:'/'});
res.cookie("msg", "用戶名或密碼不能為空", {maxAge:60*60*24*1000});
刪除
res.cookie("msg", "用戶名或密碼不能為空", {maxAge:0});
- 破解Session cookie的方法
- php session和cookie使用說(shuō)明
- 《PHP編程最快明白》第四講:日期、表單接收、session、cookie
- .net中的session與cookies區(qū)別及使用方法
- 關(guān)于Iframe如何跨域訪問Cookie和Session的解決方法
- php中如何同時(shí)使用session和cookie來(lái)保存用戶登錄信息
- ie與session丟失(新窗口cookie丟失)實(shí)測(cè)及解決方案
- php設(shè)置session值和cookies的學(xué)習(xí)示例
- PHP會(huì)話控制:Session與Cookie詳解
- 淺談COOKIE和SESSION區(qū)別
相關(guān)文章
node文件上傳功能簡(jiǎn)易實(shí)現(xiàn)代碼
本篇文章主要介紹了node文件上傳功能簡(jiǎn)易實(shí)現(xiàn)代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧2017-06-06Nodejs如何使用http標(biāo)準(zhǔn)庫(kù)異步加載https請(qǐng)求json數(shù)據(jù)
這篇文章主要介紹了Nodejs如何使用http標(biāo)準(zhǔn)庫(kù)異步加載https請(qǐng)求json數(shù)據(jù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09NodeJS?基于?Dapr?構(gòu)建云原生微服務(wù)應(yīng)用快速入門教程
Dapr?是一個(gè)可移植的、事件驅(qū)動(dòng)的運(yùn)行時(shí),它使任何開發(fā)人員能夠輕松構(gòu)建出彈性的、無(wú)狀態(tài)和有狀態(tài)的應(yīng)用程序,并可運(yùn)行在云平臺(tái)或邊緣計(jì)算中,它同時(shí)也支持多種編程語(yǔ)言和開發(fā)框架,本文重點(diǎn)介紹NodeJS云原生微服務(wù)應(yīng)用,感興趣的朋友一起看看吧2022-07-07nodejs簡(jiǎn)單訪問及操作mysql數(shù)據(jù)庫(kù)的方法示例
這篇文章主要介紹了nodejs簡(jiǎn)單訪問及操作mysql數(shù)據(jù)庫(kù)的方法,結(jié)合實(shí)例形式分析了nodejs創(chuàng)建mysql連接、執(zhí)行sql語(yǔ)句及關(guān)閉連接等相關(guān)操作技巧,需要的朋友可以參考下2018-03-03Nodejs-cluster模塊知識(shí)點(diǎn)總結(jié)及實(shí)例用法
在本篇文章里小編給大家整理的是一篇關(guān)于Nodejs-cluster模塊知識(shí)點(diǎn)總結(jié)及實(shí)例用法,有興趣的朋友們可以跟著學(xué)習(xí)下。2021-12-12