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

nodejs使用express獲取get和post傳值及session驗證的方法

 更新時間:2017年11月09日 12:18:13   作者:專注前端30年  
這篇文章主要介紹了nodejs使用express獲取get和post傳值及session驗證的方法,結(jié)合實例形式分析了nodejs使用express實現(xiàn)獲取get和post傳值及session驗證功能的具體操作步驟與注意事項,需要的朋友可以參考下

本文實例講述了nodejs使用express獲取get和post傳值及session驗證的方法。分享給大家供大家參考,具體如下:

獲取get和post傳值

get的傳值被放入了一個對象中

req.query

post的傳值被放入了

req.body

獲取方式如獲取對象的內(nèi)容方式一樣。比如,前面?zhèn)魅肓艘粋€id的值,nodejs獲取就可以req.body.id即可

express的session驗證

第一步安裝cookie和session的模塊,并引入

var session = require('express-session');
var cookieParser = require('cookie-parser');

第二部,express應(yīng)用cookie和session

app.use(cookieParser());
app.use(session({
  resave: true, // don't save session if unmodified
  saveUninitialized: false, // don't create session until something stored
  secret: 'admin', //密鑰
  name: 'testapp', //這里的name值得是cookie的name,默認(rèn)cookie的name是:connect.sid
  cookie: {
    maxAge: 80000
  } //設(shè)置maxAge是80000ms,即80s后session和相應(yīng)的cookie失效過期
}));

第三步,在請求時,攔截處理

app.use(function(req, res, next) {
  if (!req.session.user) {
    if (req.url == "/login") {
      next(); //如果請求的地址是登錄則通過,進(jìn)行下一個請求
    } else {
      res.redirect('/login');//跳轉(zhuǎn)到登錄頁面
    }
  } else if (req.session.user) {
    next();//如果已經(jīng)登錄,則可以進(jìn)入
  }
});

現(xiàn)在訪問頁面如果沒有登錄,會自動將路由指向/login頁面,最后一步就是在路由里面處理了

app.get('/login', function(req, res) {
  res.render("login");
});
app.post('/login', function(req, res) {
  if (req.body) {//判斷時候有傳值
    var user = {
      'username': req.body.username//獲取用戶名并賦值,這里之前可以自己做判斷
    };
    req.session.user = user;//賦值session,自動跳轉(zhuǎn)頁面
    res.redirect('/admin');
  } else {
    res.redirect('/login');
  }
});
app.get('/logout', function(req, res) {//做的登出頁面
  req.session.user = null;
  res.redirect('/login');
});

希望本文所述對大家nodejs程序設(shè)計有所幫助。

相關(guān)文章

  • npm鏡像源證書過期的問題解決

    npm鏡像源證書過期的問題解決

    因為npm官方鏡像在國內(nèi)訪問很慢,我們基本上都會選擇切換到國內(nèi)的一些npm鏡像,本文主要介紹了npm鏡像源證書過期的問題解決,具有一定的參考價值,感興趣的可以了解一下
    2024-07-07
  • nodejs結(jié)合socket.io實現(xiàn)websocket通信功能的方法

    nodejs結(jié)合socket.io實現(xiàn)websocket通信功能的方法

    這篇文章主要介紹了nodejs結(jié)合socket.io實現(xiàn)websocket通信功能的方法,結(jié)合實例形式分析了nodejs結(jié)合socket.io實現(xiàn)websocket通信的具體步驟與相關(guān)操作技巧,需要的朋友可以參考下
    2018-01-01
  • 淺談Node.js之異步流控制

    淺談Node.js之異步流控制

    本篇文章主要介紹了淺談Node.js之異步流控制,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • mac下安裝node.js的詳細(xì)步驟

    mac下安裝node.js的詳細(xì)步驟

    Node.js本質(zhì)上是一個JavaScript運行時環(huán)境,它提供了在服務(wù)器端運行JavaScript代碼的能力,這篇文章主要給大家介紹了關(guān)于mac下安裝node.js的詳細(xì)步驟,需要的朋友可以參考下
    2023-10-10
  • nodejs acl的用戶權(quán)限管理詳解

    nodejs acl的用戶權(quán)限管理詳解

    這篇文章主要介紹了nodejs acl的用戶權(quán)限管理詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • nodejs轉(zhuǎn)換音頻文件格式并壓縮導(dǎo)出zip格式(vscode語音插件開發(fā))

    nodejs轉(zhuǎn)換音頻文件格式并壓縮導(dǎo)出zip格式(vscode語音插件開發(fā))

    FFmpeg是一套開源的音視頻處理工具,通俗地講,可以對音視頻文件進(jìn)行剪切、拼接、水印、轉(zhuǎn)碼等處理,這篇文章主要介紹了nodejs轉(zhuǎn)換音頻文件格式并壓縮導(dǎo)出zip格式(vscode語音插件開發(fā)),需要的朋友可以參考下
    2023-05-05
  • Nodejs下使用gm圓形裁剪并合成圖片的示例

    Nodejs下使用gm圓形裁剪并合成圖片的示例

    本篇文章主要介紹了Nodejs下使用gm圓形裁剪并合成圖片的示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-02-02
  • 又拍云 Node.js 實現(xiàn)文件上傳、刪除功能

    又拍云 Node.js 實現(xiàn)文件上傳、刪除功能

    這篇文章主要介紹了又拍云 Node.js 實現(xiàn)文件上傳、刪除功能,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-10-10
  • Node.js環(huán)境下Koa2添加travis ci持續(xù)集成工具的方法

    Node.js環(huán)境下Koa2添加travis ci持續(xù)集成工具的方法

    這篇文章主要給大家介紹了在Node.js環(huán)境下Koa2添加travis ci持續(xù)集成工具的方法,文中介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面跟著小編一起來學(xué)習(xí)學(xué)習(xí)吧。
    2017-06-06
  • node.JS路徑解析之PATH模塊使用方法詳解

    node.JS路徑解析之PATH模塊使用方法詳解

    path模塊包含一系列處理和轉(zhuǎn)換文件路徑的工具集,通過 require('path') 可用來訪問這個模塊。本文將詳細(xì)介紹path模塊
    2020-02-02

最新評論