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

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)?。。?/p>

//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)文章

  • 在Ubuntu上安裝最新版本的Node.js

    在Ubuntu上安裝最新版本的Node.js

    Node.js是一個(gè)軟件平臺(tái),通常用于構(gòu)建大規(guī)模的服務(wù)器端應(yīng)用。Node.js使用JavaScript作為其腳本語(yǔ)言,由于其非阻塞I/O設(shè)計(jì)以及單線程事件循環(huán)機(jī)制,使得它可以交付超高的性能。
    2014-07-07
  • Kubernetes Node刪除鏡像的實(shí)現(xiàn)步驟

    Kubernetes Node刪除鏡像的實(shí)現(xiàn)步驟

    本文介紹了在Kubernetes集群中如何刪除節(jié)點(diǎn)上的鏡像,包括連接節(jié)點(diǎn)、查看鏡像列表、使用Docker命令刪除鏡像以及驗(yàn)證刪除結(jié)果的步驟,感興趣的可以了解一下
    2024-09-09
  • node連接MySQL數(shù)據(jù)庫(kù)的3種方式總結(jié)

    node連接MySQL數(shù)據(jù)庫(kù)的3種方式總結(jié)

    現(xiàn)在前端基本上都會(huì)用一些NodeJs,想必也想自己寫(xiě)一些API或者個(gè)人博客的后臺(tái)系統(tǒng),這些就離不開(kāi)連接數(shù)據(jù)庫(kù)的問(wèn)題,下面這篇文章主要給大家介紹了關(guān)于node連接MySQL數(shù)據(jù)庫(kù)的3種方式,需要的朋友可以參考下
    2022-08-08
  • NodeJs下的測(cè)試框架Mocha的簡(jiǎn)單介紹

    NodeJs下的測(cè)試框架Mocha的簡(jiǎn)單介紹

    本篇文章主要介紹了NodeJs下的測(cè)試框架Mocha的簡(jiǎn)單介紹,是目前最為流行的javascript框架之一,在本文我們重點(diǎn)介紹它在NodeJs上的使用。有興趣的可以了解一下。
    2017-02-02
  • NodeJS學(xué)習(xí)筆記之(Url,QueryString,Path)模塊

    NodeJS學(xué)習(xí)筆記之(Url,QueryString,Path)模塊

    今天我們來(lái)看一下在nodejs中路徑的相關(guān)操作方法。在我們開(kāi)發(fā)過(guò)程中路徑主要有:URL路徑,在瀏覽器中進(jìn)行使用,當(dāng)然這個(gè)也包含查詢字符串QueryString的相關(guān)操作;而另一種是磁盤(pán)路徑,主要用于文件等等進(jìn)行操作,我們稱為Path,所以我將它們放在一起進(jìn)行總結(jié)學(xué)習(xí)。
    2015-01-01
  • node.js中的events.emitter.once方法使用說(shuō)明

    node.js中的events.emitter.once方法使用說(shuō)明

    這篇文章主要介紹了node.js中的events.emitter.once方法使用說(shuō)明,本文介紹了events.emitter.once的方法說(shuō)明、語(yǔ)法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • 運(yùn)行Node.js的IIS擴(kuò)展iisnode安裝配置筆記

    運(yùn)行Node.js的IIS擴(kuò)展iisnode安裝配置筆記

    這篇文章主要介紹了運(yùn)行Node.js的IIS擴(kuò)展iisnode安裝配置筆記,iisnode的擴(kuò)展可以把Node.js程序托管到IIS,托管之后也意味著可以使用IIS里面的各種功能,需要的朋友可以參考下
    2015-03-03
  • Node.js打包管理工具NPM用法

    Node.js打包管理工具NPM用法

    這篇文章介紹了Node.js打包管理工具NPM的用法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • 詳解node.js搭建代理服務(wù)器請(qǐng)求數(shù)據(jù)

    詳解node.js搭建代理服務(wù)器請(qǐng)求數(shù)據(jù)

    本篇文章主要介紹了詳解node.js搭建代理服務(wù)器請(qǐng)求數(shù)據(jù),具有一定的參考價(jià)值,有興趣的可以了解一下。
    2017-04-04
  • 解決koa2 ctx.render is not a function報(bào)錯(cuò)問(wèn)題

    解決koa2 ctx.render is not a function報(bào)錯(cuò)問(wèn)題

    這篇文章主要介紹了解決koa2 ctx.render is not a function報(bào)錯(cuò)問(wèn)題,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-08-08

最新評(píng)論

盐边县| 浦江县| 长葛市| 乌兰县| 隆回县| 修水县| 璧山县| 莫力| 博爱县| 哈密市| 舒兰市| 曲松县| 元谋县| 华宁县| 苗栗县| 衡山县| 新乡县| 五大连池市| 杭锦旗| 巢湖市| 应城市| 辽阳市| 卢龙县| 聂拉木县| 连南| 永靖县| 南昌县| 东乌珠穆沁旗| 尖扎县| 宽城| 竹山县| 吴江市| 阳原县| 龙江县| 抚顺市| 佛冈县| 开鲁县| 鄂托克旗| 荆门市| 榕江县| 太仓市|