欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Express+Nodejs 下的登錄攔截實(shí)現(xiàn)代碼

 更新時(shí)間:2017年07月01日 16:20:16   作者:duyinghua  
本篇文章主要介紹了Express+Nodejs 下的登錄攔截實(shí)現(xiàn)代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

原來(lái)一直不知道怎么在Express+Nodejs里面添加類似于Struts2的攔截器(因?yàn)橐褂玫卿洈r截的功能)。

以前一直以為在router這塊添加類似一下的轉(zhuǎn)移路由控制權(quán)代碼的(每個(gè)都加很麻煩)

app.get('/show', controllers.checkLogin);//登錄驗(yàn)證
app.get('/show', controllers.showList);//實(shí)際跳轉(zhuǎn)

又或者是像某些項(xiàng)目里面給每個(gè)controller的方法里面加以下這種驗(yàn)證(太繁瑣了)

if (!req.session.user) {
    return res.redirect("/login");
  }

最近翻到之前使用session的代碼片段,突然有如茅塞頓開(kāi)?。?!

//session
app.use(function (req, res, next) {
  var err = req.flash('error');
  var success = req.flash('success');
  res.locals({
    user:req.session.user,
    navSide:req.session.navSide,
    error:err.length ? err : null,
    success:success.length ? success : null
  });
  next();
});

這尼瑪不就是個(gè)攔截器嗎~囧~

稍加改造

//登錄攔截器
app.use(function (req, res, next) {
  var url = req.originalUrl;
  if (url != "/login" && !req.session.user) {
    return res.redirect("/login");
  }
  next();
});

經(jīng)過(guò)測(cè)試,成功了

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Node.js文件系統(tǒng)fs擴(kuò)展fs-extra說(shuō)明

    Node.js文件系統(tǒng)fs擴(kuò)展fs-extra說(shuō)明

    這篇文章主要介紹了Node.js文件系統(tǒng)fs擴(kuò)展fs-extra說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • nodejs+websocket實(shí)時(shí)聊天系統(tǒng)改進(jìn)版

    nodejs+websocket實(shí)時(shí)聊天系統(tǒng)改進(jìn)版

    這篇文章主要介紹了nodejs+websocket實(shí)時(shí)聊天系統(tǒng)的改進(jìn)版,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • Node.js調(diào)試技術(shù)總結(jié)分享

    Node.js調(diào)試技術(shù)總結(jié)分享

    Node.js是一個(gè)可以快速構(gòu)建網(wǎng)絡(luò)服務(wù)及應(yīng)用的平臺(tái)。該平臺(tái)的構(gòu)建是基于Chrome's JavaScript runtime,也就是說(shuō),實(shí)際上它是對(duì)Google V8引擎(應(yīng)用于Google Chrome瀏覽器)進(jìn)行了封裝。 今天介紹Node.js調(diào)式目前有幾種技術(shù),需要的朋友可以參考下。
    2017-03-03
  • NodeJs測(cè)試框架Mocha的安裝與使用

    NodeJs測(cè)試框架Mocha的安裝與使用

    本文全面介紹如何使用Mocha,讓你輕松上手。如果你以前對(duì)測(cè)試一無(wú)所知,本文也可以當(dāng)作JavaScript單元測(cè)試入門(mén)。
    2017-03-03
  • Node.js使用對(duì)話框ngDialog的示例代碼

    Node.js使用對(duì)話框ngDialog的示例代碼

    本篇文章主要介紹了Node.js使用對(duì)話框ngDialog的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • 詳解Node.js中的模塊化方法

    詳解Node.js中的模塊化方法

    這篇文章主要為大家介紹了Node.js的模塊化,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-01-01
  • Node.js實(shí)現(xiàn)http請(qǐng)求服務(wù)與Mysql數(shù)據(jù)庫(kù)操作方法詳解

    Node.js實(shí)現(xiàn)http請(qǐng)求服務(wù)與Mysql數(shù)據(jù)庫(kù)操作方法詳解

    這篇文章主要介紹了Node.js實(shí)現(xiàn)http請(qǐng)求服務(wù)與Mysql數(shù)據(jù)庫(kù)操作方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧
    2022-10-10
  • 搭建一個(gè)nodejs腳手架的方法步驟

    搭建一個(gè)nodejs腳手架的方法步驟

    這篇文章主要介紹了如何搭建一個(gè)nodejs腳手架的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • Node.js數(shù)據(jù)庫(kù)鉤子的使用

    Node.js數(shù)據(jù)庫(kù)鉤子的使用

    本文主要介紹了Node.js數(shù)據(jù)庫(kù)鉤子的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • NVM管理Node.js實(shí)現(xiàn)不同版本Angular環(huán)境切換

    NVM管理Node.js實(shí)現(xiàn)不同版本Angular環(huán)境切換

    Node Version Manager(NVM)是一個(gè)用于管理多個(gè)Node.js版本的工具,它允許用戶在同一臺(tái)機(jī)器上安裝和使用多個(gè)Node.js版本,本文將給大家介紹NVM管理Node.js實(shí)現(xiàn)不同版本Angular環(huán)境切換的流程步驟,需要的朋友可以參考下
    2024-05-05

最新評(píng)論