Express+Nodejs 下的登录拦截实现代码
原来一直不知道怎么在Express+Nodejs里面添加类似于Struts2的拦截器(因为要使用登录拦截的功能)。
以前一直以为在router这块添加类似一下的转移路由控制权代码的(每个都加很麻烦)
app.get('/show', controllers.checkLogin);//登录验证
app.get('/show', controllers.showList);//实际跳转
又或者是像某些项目里面给每个controller的方法里面加以下这种验证(太繁琐了)
if (!req.session.user) {
return res.redirect("/login");
}
最近翻到之前使用session的代码片段,突然有如茅塞顿开啊!!
//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();
});
这尼玛不就是个拦截器吗~囧~
稍加改造
//登录拦截器
app.use(function (req, res, next) {
var url = req.originalUrl;
if (url != "/login" && !req.session.user) {
return res.redirect("/login");
}
next();
});
经过测试,成功了
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Express + Node.js实现登录拦截器的实例代码
介绍 这边的拦截器,对应于spring MVC中的filter,所有的http请求,通过拦截器处理之后才能访问到对应的代码/资源. 最典型的应用场景就是实现访问权限控制,给予不同的用户/用户组不同的页面和接口访问权限,仅能够访问允许的页面和接口. 场景 app.post('/login', function(request, res, next){ // do something }); app.post('/getData',function(request, res, next){ // d
-
Express+Nodejs 下的登录拦截实现代码
原来一直不知道怎么在Express+Nodejs里面添加类似于Struts2的拦截器(因为要使用登录拦截的功能). 以前一直以为在router这块添加类似一下的转移路由控制权代码的(每个都加很麻烦) app.get('/show', controllers.checkLogin);//登录验证 app.get('/show', controllers.showList);//实际跳转 又或者是像某些项目里面给每个controller的方法里面加以下这种验证(太繁琐了) if (!req.sess
-
Spring MVC实现的登录拦截器代码分享
之前接触过struts拦截器,但是没有使用过Spring MVC拦截器,今天花了一天时间好好研究了一下. 本文首先介绍了拦截器的基本概念,然后向大家阐述拦截器与过滤器的简要区别,通过HandlerInterceptor 接口中定义的三个方法实现拦截器功能,最后介绍了配置相关的代码,接下来看看具体内容. 定义拦截器 SpringMVC 中的Interceptor 拦截请求是通过HandlerInterceptor 来实现的.在SpringMVC 中定义一个Interceptor 非常简单,主要有两
-
vue+axios实现登录拦截的实例代码
一个项目学会vue全家桶+axios实现登录.拦截.登出功能,以及利用axios的http拦截器拦截请求和响应. 前言 该项目是利用了Github 提供的personal token作为登录token,通过token访问你的Repository List.通过这个项目学习如何实现一个前端项目中所需要的 登录及拦截.登出.token失效的拦截及对应 axios 拦截器的使用. 准备你需要先生成自己的 Github Personal Token( 生成Token). Token 生成后 访问Demo
-
SSM框架下实现登录注册的示例代码
基本配置:jdk1.8 tomcat 8 MyEclipse 先打好地基: spring配置文件 application.xml: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-
-
SpringBoot拦截器实现登录拦截的示例代码
可以对URL路径进行拦截,可以用于权限验证.解决乱码.操作日志记录.性能监控.异常处理等 实现代码 新建 interceptor包 添加拦截器代码 package com.qcby.interceptor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.method.HandlerMethod; import org.springframework.web
-
vue axios请求拦截实例代码
axios 简介 axios 是一个基于Promise 用于浏览器和 nodejs 的 HTTP 客户端,它本身具有以下特征: 从浏览器中创建 XMLHttpRequest 从 node.js 发出 http 请求 支持 Promise API 拦截请求和响应 转换请求和响应数据 取消请求 自动转换JSON数据 客户端支持防止 CSRF/XSRF 下面代码给大家介绍vue axios 请求拦截,具体代码如下所示: import axios from 'axios';//引入axios依赖 imp
-
nodejs实现用户登录路由功能
经过前面几次的学习,已经可以做下小功能,今天要实现的事用户登录路由. 一.users_model.js 功能:定义用户对象模型 var mongoose=require('mongoose'), Schema=mongoose.Schema; var UserSchema=new Schema({ username:{type:String,unique:true}, email:String, color:String, hashed_password:String }); mongoose
-
spring boot配置拦截器代码实例
这篇文章主要介绍了spring boot配置拦截器代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 首先引入web模块的依赖: 复制代码 <!-- spring boot web 组件 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</ar
-
springboot+springmvc实现登录拦截
这篇文章主要介绍了springboot+springmvc实现登录拦截,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 LoginInterceptor 实现 HandlerInterceptor 接口,自定义拦截器处理方法 LoginConfiguration 实现 WebMvcConfigurer 接口,注册拦截器 ResourceBundle 加载 properties文件数据,配置不进行拦截的路径 LoginInterceptor pac
随机推荐
- 后端接收不到AngularJs中$http.post发送的数据原因分析及解决办法
- AJAX初体验之上手篇
- 使用Maven搭建SpringMVC项目的步骤(图文教程)
- Java 字符终端上获取输入三种的方式分享
- WordPress入门指南-wordpress安装使用说明
- 点击按钮或链接不跳转只刷新页面的脚本整理
- 利用Golang生成整数随机数方法示例
- 基于jstl 标签的使用介绍
- PowerShell中的转义字符是什么?
- jquery中用函数来设置css样式
- js实现点小图看大图效果的思路及示例代码
- C# Resources资源详解
- IIS配置与错误提示 解决方法
- Android实现手势滑动多点触摸放大缩小图片效果
- 关于C#基础知识回顾--反射(一)
- JQuery实现防止退格键返回的方法
- Java压缩解压缩工具类
- 详解10个可以快速用Python进行数据分析的小技巧
- mysql unique key在查询中的使用与相关问题
- python快排算法详解
