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

外贸网站优化谷歌关键词排名抖音权重查询工具

外贸网站优化谷歌关键词排名,抖音权重查询工具,手机版网站与app,阿里云云服务平台文章目录 #x1f339;概念⭐作用 #x1f384;快速入门⭐入门案例代码实现 #x1f6f8;拦截路径#x1f354;拦截器interceptor和过滤器filter的区别#x1f386;登录校验 #x1f339;概念 拦截器#xff08;Interceptor#xff09;是一种软件设计模式#xff0c;… 文章目录 概念⭐作用 快速入门⭐入门案例代码实现 拦截路径拦截器interceptor和过滤器filter的区别登录校验 概念 拦截器Interceptor是一种软件设计模式用于在应用程序处理请求或响应时对其进行拦截和修改。拦截器可以在整个应用程序中使用用于执行跨越多个层的通用任务如身份验证、授权、缓存、日志记录、性能计量等。 在Web开发中拦截器通常用于在请求到达控制器之前或响应返回客户端之前对其进行修改。例如在Spring框架中可以使用拦截器来实现身份验证和授权检查记录请求和响应的日志以及处理全局异常等。 拦截器的工作方式是通过将其注册到应用程序的处理管道中并在请求或响应传递过程中执行相应的操作。拦截器可以访问请求上下文、响应上下文和处理程序对象从而允许它们访问和修改请求或响应的属性和状态。拦截器还可以决定是否将请求和响应继续传递到下一个处理程序或终止请求。 总之拦截器是一种非常有用的设计模式可以帮助开发人员在应用程序中实现通用的功能提高代码的可重用性和可维护性。 ⭐作用 拦截器是一种非常有用的设计模式它可以在应用程序处理请求或响应时对其进行拦截和修改。以下是拦截器的几个常见用途 身份验证和授权拦截器可以用于检查请求是否具有适当的凭据并根据需要拒绝或允许请求。这使得开发人员能够轻松地实现身份验证和授权功能。缓存拦截器可以用于缓存请求或响应数据以便加快应用程序的性能。例如在Web应用程序中可以使用拦截器缓存静态资源如CSS文件和图像。日志记录拦截器可以用于记录请求和响应的详细信息以便开发人员能够更好地了解应用程序的行为和性能。性能计量拦截器可以用于测量应用程序的性能并识别可能的瓶颈。例如在Web应用程序中可以使用拦截器跟踪页面加载时间并标识慢速查询或资源。异常处理拦截器可以用于处理应用程序中的异常情况并提供友好的错误消息。例如在Web应用程序中可以使用拦截器捕获异常并显示自定义错误页面。 快速入门 ⭐入门案例代码实现 代码脚手架我传到网盘里面了需要的同学请自取 我用夸克网盘分享了「tlias-web-management」点击链接即可保存。 链接https://pan.quark.cn/s/b98922faf182 首先我们创建interceptor类 写入下面的代码 package com.itheima.interceptor;import org.springframework.stereotype.Component; import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView;import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;Component public class LoginCheckInterceptor implements HandlerInterceptor {Override //目标资源方法运行前运行 返回true放行 返回false 拦截public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {System.out.println(preHandle);return true;}Override //目标方法运行后运行public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {System.out.println(postHandle);}Override //视图渲染完毕后运行最后运行public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {System.out.println(afterCompletion);} } 创建配置类 写入下面的代码 package com.itheima.config;import com.itheima.interceptor.LoginCheckInterceptor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;Configuration //表明这个是配置类 public class WebConfig implements WebMvcConfigurer {Autowiredprivate LoginCheckInterceptor loginCheckInterceptor;Overridepublic void addInterceptors(InterceptorRegistry registry) {//加入拦截器加入的拦截器就是我们刚刚创建的拦截器registry.addInterceptor(loginCheckInterceptor).addPathPatterns(/**);} } 入门案例就完成了 拦截路径 通过配置拦截路径我们可以设置拦截什么路径放行什么路径 拦截器interceptor和过滤器filter的区别 接口规范不同过滤器需要实现Filter接口而拦截器需要实现HanglerInterceptor接口 拦截范围不同过滤器filter会拦截所有的资源而Interceptor中会拦截Spring环境的资源 登录校验 登录操作我们需要使用LoginCheckFilter类我们修改一下里面的代码 下面是修改后的代码 package com.itheima.interceptor;import com.itheima.pojo.Result; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import org.springframework.util.StringUtils; import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;Component Slf4j public class LoginCheckInterceptor implements HandlerInterceptor {Override //目标资源方法运行前运行 返回true放行 返回false 拦截public boolean preHandle(HttpServletRequest req, HttpServletResponse resp, Object handler) throws Exception {//获取请求的urlString url req.getRequestURL().toString();log.info(请求的url{},url);//判断请求url中是否包含有login如果包含说明是登录操作进行放行if(url.contains(login)){log.info(登录操作放行);return true;}//获取请求头的令牌(token)String jwtreq.getHeader(token);//判断令牌是否存在如果不存在返回错误结果(未登录)//hasLength()方法判断字符串是否有长度(是否为空)if (!StringUtils.hasLength(jwt)){log.info(请求头token为空返回未登录的信息);Result error Result.error(NOT_LOGIN);//使用阿里巴巴的fastJSON工具包将对象转成json字符串String notLogin JSONObject.toJSONString(error);//响应给浏览器resp.getWriter().write(notLogin);return false;}//解析token如果解析失败返回登录结果//jwt令牌try {JwtUtils.parseJWT(jwt);}catch (Exception e){e.printStackTrace();log.info(解析token失败返回未登录的错误信息);Result error Result.error(NOT_LOGIN);//使用阿里巴巴的fastJSON工具包将对象转成json字符串String notLogin JSONObject.toJSONString(error);//响应给浏览器resp.getWriter().write(notLogin);return false;}//放行log.info(令牌合法放行);return true;}Override //目标方法运行后运行public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {System.out.println(postHandle);}Override //视图渲染完毕后运行最后运行public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {System.out.println(afterCompletion);} } 在技术的道路上我们不断探索、不断前行不断面对挑战、不断突破自我。科技的发展改变着世界而我们作为技术人员也在这个过程中书写着自己的篇章。让我们携手并进共同努力开创美好的未来愿我们在科技的征途上不断奋进创造出更加美好、更加智能的明天
http://www.w-s-a.com/news/633801/

相关文章:

  • 邹城市住房和建设局网站仙居网站建设贴吧
  • 为什么要用CGI做网站网站手机优化显示
  • 做袜子娃娃的网站做网站要学的东西
  • 类qq留言网站建设企业做网站公司
  • 如何查到网站建设三足鼎立小程序开发公司
  • 交互网站怎么做的wordpress ssl 错位
  • 公司宣传 如何做公司网站郑州做网站那
  • 衡阳市城乡建设协会官方网站免费游戏网站模板
  • 小程序怎么做优惠券网站合肥建站网站平台
  • 民制作网站价格株洲企业seo优化
  • 网站建设 岗位职责网站建设百度索引
  • 网站建设的内容下拉网站导航用ps怎么做
  • 怎样做p2p网站海口免费自助建站模板
  • 给企业建设网站的流程图wordpress 添加子菜单
  • 企业网站带新闻发布功能的建站皋兰县建设局网站
  • 国内外做gif的网站wordpress数据库教程
  • 成都建站平台自己做一个网站需要多少钱
  • 景区旅游网站平台建设公司企业网站源码
  • 免费高清网站推荐喂来苏州网络科技有限公司
  • php做的大型网站有哪些备案博客域名做视频网站会怎么样
  • 去哪网站备案吗昭通网站建设
  • flash企业网站源码建筑材料采购网站
  • 网站可以换虚拟主机吗部门做网站优点
  • 如何做分类网站信息营销莱芜网页定制
  • 班级网站建设感想中国做视频网站有哪些
  • 做刷票的网站wordpress图片链接插件
  • 给客户做网站图片侵权沈阳做网站的地方
  • 网站开发步骤规划蓝天云免费空间主机
  • 网站字体规范wordpress找不到页面内容编辑
  • 静态网站建设参考文献茂名营销型网站制作公司