最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

node.js 中間件express-session使用詳解

 更新時間:2017年05月20日 17:56:33   作者:wyChen_sunshine  
這篇文章主要給大家介紹了node.js中間件express-session使用的相關資料,文中介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面來一起看看吧。

本文介紹的關于node.js中間件express-session的相關內(nèi)容,分享出來供大家從參考學習,下面來一起看看詳細的介紹:

一、為什么使用session?

session運行在服務器端,當客戶端第一次訪問服務器時,可以將客戶的登錄信息保存。

當客戶訪問其他頁面時,可以判斷客戶的登錄狀態(tài),做出提示,相當于登錄攔截。

session可以和Redis或者數(shù)據(jù)庫等結合做持久化操作,當服務器掛掉時也不會導致某些客戶信息(購物車)丟失。

二、session的工作流程:

當瀏覽器訪問服務器并發(fā)送第一次請求時,服務器端會創(chuàng)建一個session對象,生成一個類似于key,value的鍵值對, 然后將key(cookie)返回到瀏覽器(客戶)端,瀏覽器下次再訪問時,攜帶key(cookie),找到對應的session(value) 。 客戶的信息都保存在session中。

三、express-session的常用參數(shù):

secret:一個String類型的字符串,作為服務器端生成session的簽名。

name:返回客戶端的key的名稱,默認為connect.sid,也可以自己設置。

resave:(是否允許)當客戶端并行發(fā)送多個請求時,其中一個請求在另一個請求結束時對session進行修改覆蓋并保存。

默認為true。但是(后續(xù)版本)有可能默認失效,所以最好手動添加。

saveUninitialized:初始化session時是否保存到存儲。默認為true, 但是(后續(xù)版本)有可能默認失效,所以最好手動添加。

cookie:設置返回到前端key的屬性,默認值為{ path: ‘/', httpOnly: true, secure: false, maxAge: null }

express-session的一些方法:

Session.destroy() :刪除session,當檢測到客戶端關閉時調(diào)用。

Session.reload() :當session有修改時,刷新session。

Session.regenerate() :將已有session初始化。

Session.save() :保存session。

四、示例demo

//app.js中添加如下代碼(已有的不用添加)
var express = require('express');
var cookieParser = require('cookie-parser');
var session = require('express-session');

app.use(cookieParser('sessiontest'));
app.use(session({
 secret: 'sessiontest',//與cookieParser中的一致
 resave: true,
 saveUninitialized:true
}));
//修改router/index.js,第一次請求時我們保存一條用戶信息。
router.get('/', function(req, res, next) {
 var user={
  name:"Chen-xy",
  age:"22",
  address:"bj"
 }
 req.session.user=user;
 res.render('index', {
  title: 'the test for nodejs session' ,
  name:'sessiontest'
 });
});
//修改router/users.js,判斷用戶是否登陸。
router.get('/', function(req, res, next) {
 if(req.session.user){
  var user=req.session.user;
  var name=user.name;
  res.send('你好'+name+',歡迎來到我的家園。');
 }else{
  res.send('你還沒有登錄,先登錄下再試試!');
 }
});

總結

好了,以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關文章

  • 詳解如何實現(xiàn)一個簡單的Node.js腳手架

    詳解如何實現(xiàn)一個簡單的Node.js腳手架

    本篇文章主要介紹了如何實現(xiàn)一個簡單的Node.js腳手架,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • nodejs關于中間件解析

    nodejs關于中間件解析

    這篇文章主要介紹了nodejs關于中間件解析,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • nodejs16.15.0版本如何解決node-sass和sass-loader版本沖突問題

    nodejs16.15.0版本如何解決node-sass和sass-loader版本沖突問題

    這篇文章主要介紹了nodejs16.15.0版本如何解決node-sass和sass-loader版本沖突問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • gulp安裝以及打包合并的方法教程

    gulp安裝以及打包合并的方法教程

    這篇文章主要給大家介紹了關于gulp實現(xiàn)人一個打包合并的方法教程,并分享了gulp打包js/css時合并成一個文件時的順序的解決方法,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面隨著小編來一起學習學習吧。
    2017-11-11
  • node中Stream流的詳細介紹

    node中Stream流的詳細介紹

    這篇文章主要介紹了node中Stream的詳細介紹,流是一個數(shù)據(jù)傳輸手段,是端到端信息交換的一種方式,而且是有順序的,是逐塊讀取數(shù)據(jù)、處理內(nèi)容,用于順序讀取輸入或?qū)懭胼敵?/div> 2022-09-09
  • Windows下安裝NodeJS的詳細步驟

    Windows下安裝NodeJS的詳細步驟

    這篇文章主要介紹了Windows下安裝NodeJS,本文分步驟通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-08-08
  • node.js中Socket.IO的進階使用技巧

    node.js中Socket.IO的進階使用技巧

    這篇文章主要介紹了node.js中Socket.IO的進階使用技巧,本文講解了配置、房間、事件、授權等內(nèi)容,需要的朋友可以參考下
    2014-11-11
  • node.js中 redis 的安裝和基本操作示例

    node.js中 redis 的安裝和基本操作示例

    這篇文章主要介紹了node.js中 redis 的安裝和基本操作,結合實例形式分析了node.js中Redis下載、安裝、數(shù)據(jù)類型及基本操作技巧,需要的朋友可以參考下
    2020-02-02
  • Node.js+Express+MySql實現(xiàn)用戶登錄注冊功能

    Node.js+Express+MySql實現(xiàn)用戶登錄注冊功能

    這篇文章主要為大家詳細介紹了Node.js+Express+MySql實現(xiàn)用戶登錄注冊,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • Node.js 應用跑得更快 10 個技巧

    Node.js 應用跑得更快 10 個技巧

    Node.js 受益于它的事件驅(qū)動和異步的特征,已經(jīng)很快了。本文將介紹 10 條,經(jīng)過檢驗得知可大大提高 Node 應用的技巧。廢話不多說,讓我們逐條來看看
    2016-04-04

最新評論

湘乡市| 永宁县| 冀州市| 阿克| 新疆| 隆子县| 桑日县| 灵璧县| 镇巴县| 尉氏县| 绵阳市| 科技| 章丘市| 黑水县| 子洲县| 永康市| 遵义市| 丽江市| 如皋市| 平湖市| 醴陵市| 加查县| 普定县| 苍梧县| 拉萨市| 永福县| 鹤庆县| 兴文县| 广饶县| 克什克腾旗| 华安县| 荣昌县| 松溪县| 安丘市| 兴和县| 堆龙德庆县| 盐池县| 建始县| 章丘市| 静安区| 卓资县|