node.js框架express的redirect重定向拦截返回页面框架问题

时间:2020-12-14作者:klpeng分类:JS/Shell浏览:623评论:0

在node.js开发中使用express-session来进行拦截

在未登录成功的情况下,进入主页或其他页面来进行重新定向到登录页面

代码如下:

//引入var express=require('express');var mysql=require('mysql');var bodyParser=require('body-parser');var favicon=require('serve-favicon');var path=require('path');var morgan = require('morgan');var userListRouter=require('./router/userList');var ejs=require('ejs');server.use(express.static('./http')); //选择地址//创建服务var app=express();//拦截模块server.use(session({secret: 'root', //密钥resave: true, //重新保存,当再有请求过来的时候,会覆盖之前的sessionrolling: true,saveUninitialized: true, //初始化session是否保存cookie: {maxAge: 10000 //过期时间  毫秒}}));server.all('*', function (req, res, next) {console.log(req.session);if (req.session.user) {next();} else {if (req.url == '/pages/login.html' || req.headers.referer == 'http://localhost/pages/login.html') {next();} else {res.redirect('http://localhost:/pages/login.html');}}});

如果像以上这种方式是不会从新定向的

node.js框架express的redirect重定向拦截返回页面框架问题node.js框架express的redirect重定向拦截返回页面框架问题
会直接返回登录页面的结构,达不到重新定向跳转页面的目的,在多次实验以后发现问题在于

server.use(express.static('./http')); //选择地址这个必须写在拦截模块的后面,才能达到重新定向 页面的效果


打赏
文章版权声明:除非注明,否则均为彭超的博客原创文章,转载或复制请以超链接形式并注明出处。
相关推荐

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

猜你喜欢