Home  >  Article  >  Web Front-end  >  An example explains the method of obtaining get and post values ​​and session verification in express in nodejs

An example explains the method of obtaining get and post values ​​and session verification in express in nodejs

小云云
小云云Original
2017-12-23 09:08:393019browse

This article continues to deepen the usage of express in node.js. It mainly introduces the method of nodejs using express to obtain get and post values ​​​​and session verification. It analyzes nodejs using express to obtain get and post values ​​​​and session verification based on the example form. Friends who need it can refer to the specific operation steps and precautions of the function. I hope it can help everyone.

Get the values ​​passed by get and post

The value passed by get is put into an object


req.query

The passed value of post is put into


req.body

The acquisition method is the same as the method of obtaining the content of the object. For example, if an id value is passed in earlier, nodejs can obtain it by req.body.id

express session verification

The first step is to install the cookie and session modules and introduce


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

The second step is to express application cookies and 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,默认cookie的name是:connect.sid
  cookie: {
    maxAge: 80000
  } //设置maxAge是80000ms,即80s后session和相应的cookie失效过期
}));

The third step, when requesting, intercept and process


app.use(function(req, res, next) {
  if (!req.session.user) {
    if (req.url == "/login") {
      next(); //如果请求的地址是登录则通过,进行下一个请求
    } else {
      res.redirect('/login');//跳转到登录页面
    }
  } else if (req.session.user) {
    next();//如果已经登录,则可以进入
  }
});

If you are not logged in when accessing the page now, the routing will automatically point to the /login page. The last step is to route It deals with

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,自动跳转页面
    res.redirect('/admin');
  } else {
    res.redirect('/login');
  }
});
app.get('/logout', function(req, res) {//做的登出页面
  req.session.user = null;
  res.redirect('/login');
});

Related recommendations:
Detailed explanation of node.js using websocket based on express

Detailed explanation of Node.js using Express.Router

Express development history

The above is the detailed content of An example explains the method of obtaining get and post values ​​and session verification in express in nodejs. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn