当前位置: 首页 > news >正文

网络营销模式有几种郑州seo竞价

网络营销模式有几种,郑州seo竞价,最专业的企业营销型网站建设,腾讯云服务器做网站可以吗拦截器(Interceptor) 概念:是一种动态拦截方法调用的机制,类似于过滤器。Spring框架中提供的,用来动态拦截控制器方法的执行。 作用:拦截请求,在指定的方法调用前后,根据业务需要执行…

拦截器(Interceptor)

概念:是一种动态拦截方法调用的机制,类似于过滤器。Spring框架中提供的,用来动态拦截控制器方法的执行。

作用:拦截请求,在指定的方法调用前后,根据业务需要执行预先设定的代码。

快速入门

定义拦截器

实现HandlerInterceptor接口,并重写其所有方法。 

@Component
public class LoginInterceptor implements HandlerInterceptor {@Override //目标方法执行前的执行,返回true放行,返回false不放行public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {return HandlerInterceptor.super.preHandle(request, response, handler);}@Override //目标方法执行后执行public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {HandlerInterceptor.super.postHandle(request, response, handler, modelAndView);}@Override //视图渲染执行后执行,最后执行public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {HandlerInterceptor.super.afterCompletion(request, response, handler, ex);}
}

注册拦截器

@Configuration
public class WebConfig implements WebMvcConfigurer {@AutowiredLoginInterceptor loginInterceptor;@Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(loginInterceptor).addPathPatterns("/**");}
}

拦截器-拦截路径

拦截路径

含义

举例

/*

一级路径

能匹配/depts,/emps,/login,不能匹配 /depts/1

/**

任意级路径

能匹配/depts,/depts/1,/depts/1/2

/depts/*

/depts下的一级路径

能匹配/depts/1,不能匹配/depts/1/2,/depts

/depts/**

/depts下的任意级路径

能匹配/depts,/depts/1,/depts/1/2,不能匹配/emps/1

拦截器-执行流程

 Filter与Interceptor区别

  • 接口规范不同:过滤器需要实现Filter接口,而拦截器需要实现HandlerInterceptor接口。
  • 拦截范围不同:过滤器Filter会拦截所有的资源,而Interceptor只会拦截Spring环境中的资源。

 登录验证

  • 获取请求url。 判断请求url中是否包含login,如果包含,说明是登录操作,放行。
  • 获取请求头中的令牌(token)。
  • 判断令牌是否存在,如果不存在,返回错误结果(未登录)。
  • 解析token,如果解析失败,返回错误结果(未登录)。
  • 放行。

                                     

Interceptor的实现

@Slf4j
@Component
public class LoginInterceptor implements HandlerInterceptor {@Override //目标方法执行前的执行,返回true放行,返回false不放行public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {//获取urlString url = request.getRequestURL().toString();log.info("url路径:{}",url);//获取tokenString token = request.getHeader("token");log.info("token:{}",token);//如果没有Tokenif (!StringUtils.hasLength(token)) {extracted(response);return false;}//解析tokentry {JwtUtils.parseJwt(token);} catch (Exception e) {e.printStackTrace();extracted(response);return false;}return true;}private void extracted(HttpServletResponse response) throws IOException {Result noLogin = Result.error("用户未登录");response.setCharacterEncoding("UTF-8");response.getWriter().write(JSONObject.toJSONString(noLogin));}@Override //目标方法执行后执行public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {HandlerInterceptor.super.postHandle(request, response, handler, modelAndView);}@Override //视图渲染执行后执行,最后执行public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {HandlerInterceptor.super.afterCompletion(request, response, handler, ex);}
}

配置Interceptor

@Configuration
public class WebConfig implements WebMvcConfigurer {@AutowiredLoginInterceptor loginInterceptor;@Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(loginInterceptor).addPathPatterns("/**").excludePathPatterns("/login");}
}

测试

 

 

http://www.yayakq.cn/news/172674/

相关文章:

  • 重庆网站建设公司名单合肥建设网
  • 网站与域名的关系哪个网站可以查企业信息
  • 医生在网站上做自我宣传专门做餐厅设计的网站
  • 企业网站建设方案范本网站建设素材
  • 取名字网站如何做网页设计与制作教程 刘瑞新
  • 杭州低价做网站网站策划方案 优帮云
  • 网站优化与seo免费制作电子贺卡的app
  • 找投资项目的网站免备案wordpress主机空间
  • 外包app公司不给源代码长沙网站优化效果
  • 营销型国外网站wordpress 后端
  • 德州建设网站有搜索引擎优化seo方案
  • 中国苏州网站icp备案要多少钱
  • led灯网站模板安徽省所有建设类网站
  • 东莞横沥网站设计集团网站建设案例与网站作用
  • 浙江城乡建设部网站首页网站文字优化方案
  • 校园加盟网站建设爱站网功能
  • 东莞做网站公司哪家好wordpress 博客主题 seo
  • python游戏编程入门搜索引擎优化方法
  • 建设银行网站银行登录没有备案的网站会怎么样
  • 东莞 网站设计免费建站免费的免费
  • 山东高端网站建设南昌seo推广
  • 全屏网站 代码百度做商务网站多少钱
  • 上海太江建设网站肃州区住房和城乡建设局网站
  • 可视化网站开发平台花生壳域名做网站
  • 门窗营销型网站微信app制作公司
  • 设计类的网站和简介不同类型网站栏目设置区别
  • 网站的优化从几个方面网站建设的创新之处
  • 网站建设创业wordpress会员可自行发布新闻系统
  • 西安广告网站制作装饰工程公司经营范围包括哪些?
  • 怎样创建网站app用wordpress做微站