Maison >interface Web >js tutoriel >Un exemple explique la méthode d'obtention des valeurs get et post et la vérification de session en express dans nodejs
Cet article continue d'approfondir l'utilisation d'express dans node.js. Il présente principalement la méthode de nodejs utilisant express pour obtenir les valeurs get et post et la vérification de session. valeurset vérification de session basée sur un exemple. Les amis qui en ont besoin peuvent se référer aux étapes de fonctionnement spécifiques et aux précautions de la fonction. J'espère que cela pourra aider tout le monde.
Récupérer les valeurs transmises par get et post
La valeur transmise par get est mise dans un objet
req.query
La valeur transmise du message est mise dans
req.body
La méthode d'acquisition est la même que la méthode d'obtention du contenu de l'objet. Par exemple, si la valeur d'un identifiant est transmise plus tôt, nodejs peut l'obtenir par req.body.id
vérification de session express
La première étape consiste à installer les modules cookie et session et à introduire
var session = require('express-session'); var cookieParser = require('cookie-parser');
La deuxième étape consiste à utiliser express pour appliquer les cookies et la 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失效过期 }));
La troisième étape, lors de la demande, de l'interception et du traitement
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();//如果已经登录,则可以进入 } });
Si vous n'êtes pas connecté lors de l'accès à la page maintenant, la route sera automatiquement dirigée vers la page /login, la dernière étape consiste à la traiter dans le routage
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'); });
Recommandations associées :
Explication détaillée de node.js à l'aide de websocket basé sur express
Explication détaillée de Node.js utilise Express.Router
Historique de développement Express
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!