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

用AIDE怎么建设网站网站做管制户外刀具

用AIDE怎么建设网站,网站做管制户外刀具,软文文案案例,小说网站代理在项目开发过程中#xff0c;会有很多API接口不需要登录就能直接访问#xff0c;比如公开数据查询之类的 ~ 常规处理方法基本是 使用拦截器或过滤器#xff0c;拦截需要认证的请求路径。在拦截器中判断session或token信息#xff0c;如果存在则放行#xff0c;否则跳转到…在项目开发过程中会有很多API接口不需要登录就能直接访问比如公开数据查询之类的 ~ 常规处理方法基本是 使用拦截器或过滤器拦截需要认证的请求路径。在拦截器中判断session或token信息如果存在则放行否则跳转到登录页。过滤器原理与拦截器类似可以在过滤器中判断请求的session或token信息麻烦的地方就是每次开发新的免登录接口的时候都需要去配置一下路径 今天介绍一个更优雅的方法自定义注解的方式 基本思路是自定义一个注解在不需要校验登录的Controller方法或类上使用该注解。通过AOP或拦截器在方法执行前判断免登录状态 自定义注解这里命名为NoToken import java.lang.annotation.*;/*** 不校验token注解*/ Target({ElementType.METHOD,ElementType.TYPE}) Retention(RetentionPolicy.RUNTIME) Documented public interface NoToken {String name() default ; }这里采用拦截器搭配使用拦截器代码如下 Slf4j public class SessionInterceptor implements HandlerInterceptor {//在请求处理之前进行调用Controller方法调用之前OverrideReferencepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {if (handler instanceof HandlerMethod) {HandlerMethod handlerMethod (HandlerMethod) handler;NoToken classAnno handlerMethod.getMethod().getDeclaringClass().getAnnotation(NoToken.class);//获取出Controller上的NoToken注解if (classAnno ! null) {// 如果注解不为null, 说明不需要拦截, 直接放过return true;} else {Method method handlerMethod.getMethod();handlerMethod.getMethodAnnotation(NoToken.class);//获取出方法上的NoToken注解NoToken access method.getAnnotation(NoToken.class);if (access ! null) {// 如果注解不为null, 说明不需要拦截, 直接放过return true;}}}RedisService redis (RedisService) SpringContextUtils.getBean(redisService);String token request.getHeader(token);boolean ok false;log.info(开始检验token!);if (!StringUtils.isEmpty(token)) {if (redis.exists(token)) {redis.expire(token, ConstantsUtil.APP_TOKEN_EXPIRE);log.info(token有效!);ok true;}}if (!ok) {MapString, Object result new HashMap();result.put(returncode,-1);result.put(returnmsg, 登录已过期,请重新登录);writeJSON(response, result);return ok;}return ok;}Overridepublic void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception {}Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception e) throws Exception {}public void writeJSON(HttpServletResponse response, Object o)throws IOException {response.setContentType(text/html;charsetUTF-8);PrintWriter out response.getWriter();String JsonString JSON.toJSONString(o);out.write(JsonString);} } 大家看到在NoToken注解和拦截器上做了两种处理 也就是类注解 和 方法注解 如果注解放到方法上该方法调用的时候就是免登录的。如果注解放到Controller类上那么该类下的所有请求接口都是免登录的是不是很方便 ~ /*** 类上加NoToken注解该类下所有方法都免登录*/ NoToken Slf4j RestController RequestMapping(/test) public class TestController {/*** 方法上单独加注解只对该方法免登录*/NoTokenRequestMapping(testMethod)public void testMethod() {System.out.println(1111111111111);}} 以上就是实现方式如果觉得还有用就点个赞吧 ~
http://www.hkea.cn/news/14333145/

相关文章:

  • 泰州网站建设设计郑州网站建设设计公司
  • 国外做问卷赚购物券等的网站制作php网站用什么软件
  • 天猫入驻网站建设沈阳网站制作招聘网
  • 免费网站在哪里申请表设计模板网站
  • 网站预订模板怎么做赣州app开发
  • 谷歌自建站和优化济南网站自然优化
  • 上传电影网站源码h5可视化开发工具
  • 唐山制作网站公司搜索引擎中 哪些网站可以获得更好的排名
  • 河南网站开发泰安企业建站公司哪里找
  • 常州市武进区城乡建设局网站wordpress调用标签大全
  • 周口城乡建设局网站建设网站分析报告
  • 网站建设一般是用哪个软件全屏背景网站如何做到自适应
  • 国外 网站有做验证码吗烟台企业管理培训课程
  • 正规营销型网站建设公司免费ddns域名注册
  • 网站文件夹命名seo泰安有什么好的网络科技公司
  • 建站神器跟wordpress哪个好重庆在线高校开放课程平台
  • 北京设计工作室排名如何写网站优化目标
  • 宿州市网站建设有哪些公司百度2022新版下载
  • 软件开发和网站开发区别wordpress 插件漏洞扫描
  • 常用的小企业网站建设软件技术用什么笔记本电脑好
  • 企业网站必须实名认证网站开发团队配置
  • 做网站需要固定ip么wordpress点评插件
  • 服装设计网站哪个好中国电力建设股份有限公司官方网站
  • 天津高端品牌网站建设绍兴公司网站制作公司
  • 龙华做棋牌网站建设多少钱建设工程报建网站查询
  • html5单页网站模板上海服装贸易公司排名
  • 淘宝客网站做百度竞价网站开发交付
  • 用vs做购物网站代码网站被安全狗拦截
  • 网站开发技术网站建设时应该做的优化
  • 帮人做钓鱼网站自己怎样建立个人网站