最新要闻
- 全球资讯:索尼时隔10年公布全新PS掌机Q!价格够低
- 焦点资讯:女孩没考好 和妈妈吵架后竟被丢高速:网友观点出奇一致
- “4S店之王”破产离场 斯巴鲁中国重大变更:开始独资|当前焦点
- 大超险些成为007 环球快资讯
- 南漳县属于哪个省市_南漳县属于哪个市|每日速讯
- 今日快看!电影相约2000年(相约2000年)
- imessage怎么设置不要钱_imessage怎么设置
- 【独家焦点】“超人”亨利卡维尔有望成为007新片邦德扮演者:试镜效果棒极了
- 长安欧尚Z6新能源半年降价3万多 车主集体投诉
- 美国国债收益率持续下跌,10年期国债收益率下跌8.90个基点 世界资讯
- 世界通讯!GPS靠边!北斗全球卫星导航系统星座部署完成3年 正突破毫米级甚至更小精度
- 【忠阳车评】固态电池量产难在哪 世界微资讯
- 【天天报资讯】微软爆料索尼PS6主机:2028年推出
- 光刻机一哥荷兰ASML:建立全自主半导体产业链几乎不可能!|环球热讯
- 《暗黑破坏神4》野蛮人双晕结算流分享 野蛮人双晕结算流怎么玩?
- 高考查分场面代入感太强 男生601分激动得满屋蹦跳:高中三年考最好的一次
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
世界信息:登录验证,JWT,过滤器,拦截器使用总结 2023
登录验证,JWT,过滤器,拦截器使用总结
【资料图】
1.cookie浏览器禁用后不可用,跨域不可用
2.session集群不可用,
3.JWT3.1 添加依赖jwt.io
io.jsonwebtoken jjwt 0.9.1
3.2 JwtUtils
package com.itheima.utils;
import io.jsonwebtoken.Claims;import io.jsonwebtoken.Jwts;import io.jsonwebtoken.SignatureAlgorithm;import java.util.Date;import java.util.Map;
public class JwtUtils {
private static String signKey = "itheima";private static Long expire = 43200000L;/** * 生成JWT令牌 * @param claims JWT第二部分负载 payload 中存储的内容 * @return */public static String generateJwt(Map claims){ String jwt = Jwts.builder() .addClaims(claims) .signWith(SignatureAlgorithm.HS256, signKey) .setExpiration(new Date(System.currentTimeMillis() + expire)) .compact(); return jwt;}/** * 解析JWT令牌 * @param jwt JWT令牌 * @return JWT第二部分负载 payload 中存储的内容 */public static Claims parseJWT(String jwt){ Claims claims = Jwts.parser() .setSigningKey(signKey) .parseClaimsJws(jwt) .getBody(); return claims;}
}
3.filter 过滤器:登录验证,敏感次,
3.1开启了对filter servlet组件的支持@ServletComponentScan //开启了对servlet组件的支持@SpringBootApplicationpublic class TliasWebManagementApplication {
public static void main(String[] args) { SpringApplication.run(TliasWebManagementApplication.class, args);}
}
3.2 DemoFilter
package com.itheima.filter;
import javax.servlet.*;import javax.servlet.annotation.WebFilter;import java.io.IOException;
//@WebFilter(urlPatterns = "/*")public class DemoFilter implements Filter {@Override //初始化方法, 只调用一次public void init(FilterConfig filterConfig) throws ServletException {System.out.println("init 初始化方法执行了");}
@Override //拦截到请求之后调用, 调用多次public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { System.out.println("Demo 拦截到了请求...放行前逻辑"); //放行 chain.doFilter(request,response); System.out.println("Demo 拦截到了请求...放行后逻辑");}@Override //销毁方法, 只调用一次public void destroy() { System.out.println("destroy 销毁方法执行了");}
}
3.3 过滤器链:按过滤器类的名词优先执行
3.4 登录过滤器package com.itheima.filter;
import com.alibaba.fastjson.JSONObject;import com.itheima.pojo.Result;import com.itheima.utils.JwtUtils;import lombok.extern.slf4j.Slf4j;import org.springframework.util.StringUtils;
import javax.servlet.*;import javax.servlet.annotation.WebFilter;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;
@Slf4j//@WebFilter(urlPatterns = "/*")public class LoginCheckFilter implements Filter {@Overridepublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {HttpServletRequest req = (HttpServletRequest) request;HttpServletResponse resp = (HttpServletResponse) response;
//1.获取请求url。 String url = req.getRequestURL().toString(); log.info("请求的url: {}",url); //2.判断请求url中是否包含login,如果包含,说明是登录操作,放行。 if(url.contains("login")){ log.info("登录操作, 放行..."); chain.doFilter(request,response); return; } //3.获取请求头中的令牌(token)。 String jwt = req.getHeader("token"); //4.判断令牌是否存在,如果不存在,返回错误结果(未登录)。 if(!StringUtils.hasLength(jwt)){ log.info("请求头token为空,返回未登录的信息"); Result error = Result.error("NOT_LOGIN"); //手动转换 对象--json --------> 阿里巴巴fastJSON String notLogin = JSONObject.toJSONString(error); resp.getWriter().write(notLogin); return; } //5.解析token,如果解析失败,返回错误结果(未登录)。 try { JwtUtils.parseJWT(jwt); } catch (Exception e) {//jwt解析失败 e.printStackTrace(); log.info("解析令牌失败, 返回未登录错误信息"); Result error = Result.error("NOT_LOGIN"); //手动转换 对象--json --------> 阿里巴巴fastJSON String notLogin = JSONObject.toJSONString(error); resp.getWriter().write(notLogin); return; } //6.放行。 log.info("令牌合法, 放行"); chain.doFilter(request, response);}
}
3.5 拦截器:interceptor 拦截请求
浏览器--》Filter--》DispatcherServlet--->Interceptor--->controller
过滤器:需实现Filter接口;而拦截器需实现HandlerInterceptor接口过滤器:会过滤所有资源;而拦截器Interceptor只会拦截spring环境中的资源;
/**/*/deps/*/deps/**
备注:过滤器和拦截器在实践开发中使用一种就可以。
关键词:
世界信息:登录验证,JWT,过滤器,拦截器使用总结 2023
全球资讯:索尼时隔10年公布全新PS掌机Q!价格够低
焦点资讯:女孩没考好 和妈妈吵架后竟被丢高速:网友观点出奇一致
“4S店之王”破产离场 斯巴鲁中国重大变更:开始独资|当前焦点
大超险些成为007 环球快资讯
南漳县属于哪个省市_南漳县属于哪个市|每日速讯
今日快看!电影相约2000年(相约2000年)
imessage怎么设置不要钱_imessage怎么设置
Springboot web 项目开发流程梳理总结|世界讯息
今日热门!模型剪枝:让深度学习模型更好地应对不同的任务和环境
WEB安全-渗透测试-waf绕过信息收集_世界快看点
【独家焦点】“超人”亨利卡维尔有望成为007新片邦德扮演者:试镜效果棒极了
长安欧尚Z6新能源半年降价3万多 车主集体投诉
天天讯息:ASP.NET Core MVC 从入门到精通之缓存
全球时讯:文心一言 VS 讯飞星火 VS chatgpt (45)-- 算法导论6.1 3题
当前头条:【后端面经-Spring】Spring 中 bean 的生命周期)
美国国债收益率持续下跌,10年期国债收益率下跌8.90个基点 世界资讯
世界通讯!GPS靠边!北斗全球卫星导航系统星座部署完成3年 正突破毫米级甚至更小精度
【忠阳车评】固态电池量产难在哪 世界微资讯
【天天报资讯】微软爆料索尼PS6主机:2028年推出
光刻机一哥荷兰ASML:建立全自主半导体产业链几乎不可能!|环球热讯
K8S安装记录
《暗黑破坏神4》野蛮人双晕结算流分享 野蛮人双晕结算流怎么玩?
高考查分场面代入感太强 男生601分激动得满屋蹦跳:高中三年考最好的一次
重庆两案例入选全国职业教育产教融合典型案例_观天下
5人全部遇难 泰坦号残骸距离泰坦尼克号500米 快看点
【世界快播报】轴距超过Model Y 3.5秒破百 即将上市的起亚EV6到底行不行?
一年4.3万人死于车祸!美国要求所有大货车大客车配备自动刹车系统_世界速递
dll格式用什么软件打开(如何打开dll格式文件) 全球热头条
环球快看点丨全国龙舟身价“天花板”?广东一条龙舟70个房东 身价20亿 这事是真的
今日视点:女子番茄吃多胃痛医生让喝可乐:照做两天后缓解!专业人士科普
泰坦号观光艇内爆5名乘员死亡 一款游戏销量暴涨 玩家:6美元体验惨案
每日看点!BLOG-3----22206117
环球热点评!留给“牛粉”的时间不多了!兰博基尼宣布:Urus将于五年内变为纯电车型
25万美元一趟值吗?致5死泰坦号潜艇内部曝光:没凳子只能盘腿坐 马桶是最佳座位
云南上线购车送油券活动:每车2500元 可在中石油、中石化消费
缅北电诈愈演愈烈,人口贩卖已成全球性危机 焦点快播
强化学习从基础到进阶-案例与实践[3]:表格型方法:Sarsa、Qlearning;蒙特卡洛策略、时序差分等以及Qlearning项目实战
ChatGPT和AI会重燃中国的虚拟宇宙吗?-世界聚焦
产业强市|安能智慧物流产业联盟暨苏皖区域总部即将落户句容 焦点快报
山东已出现43℃以上高温 多地异常高温到底是什么原因?专家揭秘
上海高考分数线公布 :本科405分 官方:不会对成绩进行排名
【全球新视野】配置你的 Linux 的 GRUB 启动背景
rust 集合、错误处理、泛型、Trait、生命周期、包 全球新动态
MosaicML 推出 30B 模型 — 挑战 LLaMA、Falcon 和 GPT-全球今日报
天天即时看!mongodb 深度分页优化思路之cursor游标
记录liunx服务器和docker时区修改-天天热头条
汉语为桥 粽情西岸 当前热点
天天观点:究竟是驼背还是翘臀?全新奔驰GLC轿跑SUV插电混动版来了
马斯克和扎克伯格约架 马斯克母亲:确认取消了|世界视点
热文:https://editor.csdn.net/md/?articleId=131348876
迪凡车业为旗下跃歌品牌保驾护航
理想L系列经常充到100%伤车吗? 李想:不会 放心用 电池寿命大于车|焦点快看
世界播报:浙江一男子躲雨后将屋主晒的菜踢到雨中 三观尽毁:网友称坏到骨子里
景区网红大雁被游客踢中要害离世 吓着孩子:网友愤怒 应重罚 世界动态
全球短讯!Win11最近一个月卡爆了!CPU占用高元凶终于找到:微软认错
内江第十一届大千龙舟文化节市中区端午民俗活动举行|独家
【世界独家】詹姆斯·卡梅隆谈泰坦号观光艇内爆导致5名乘员死亡:和泰坦尼克号沉没惊人相似 灾难再一次重演
微软誓要收购动视暴雪 索尼急了!PS6主机将封杀之|环球今日讯
前沿资讯!南孚旗下 益圆5号/7号碳性电池冲量:0.48元/节
车主自曝差点被闷死在特斯拉里:车辆完全死机 车门锁死_每日速讯
辽宁:2023年高考成绩24日16时发布|当前视点
iOS 微信、支付宝、银联支付组件的进一步设计-天天播资讯
当前滚动:理查森的大型CityLine办公楼开发项目上市
【天天新要闻】50斤重鳄雀鳝藏匿水库一年偷鱼吃 为何不负责放生屡禁不止?律师、专家释疑
女子称41℃高温把盆里的衣服晒冒烟了!多地今日最高温40度:热热热
马斯克和扎克伯格约架 马斯克母亲发话:打打嘴仗算了|全球快资讯
世界速读:1. Spring相关概念
巡演拯救经济?外媒称霉霉巡演可能为美国带来46亿美元收入
土耳其央行2年来首次加息 焦点消息
真八角笼中决斗!马斯克发战书 扎克伯格接受了:科技大佬约架 都认真对待
端午假期遇上高考查分 各地高考成绩今天起陆续公布:各省成绩查询时间一览
天天快消息!张绍刚你好狠的心 剧中亲儿子都舍得杀!《长风渡》热度破万 你追了吗
地表最强三缸机!丰田全新GR卡罗拉赛道版限量发布:三缸榨出300匹马力
前端Vue自定义导航栏菜单 定制左侧导航菜单按钮 中部logo图标 右侧导航菜单按钮
夏日健康帖丨出现这几个症状别大意!你可能已经中暑|每日热文
苹果尴尬!iOS系统比安卓难上手实锤了:易用性相差58% 环球讯息
正式牵手!苏州和上海地铁连起来了:无感换乘 比坐高铁方便多了-每日观点
端午“龙舟”天花板!广西桂林遇龙河现“巨龙巡游”:无比壮观
每日报道:国产操作系统赶超Win 10:插上U盘就能用
泰坦号壳体破裂沉没 乘员无一生还 世界热点评
创两月以来最大跌幅!特斯拉市值一夜蒸发3400亿元
被特斯拉坑了 半幅方向盘车型暂停上牌?多方回应 天天观点
读发布!设计与部署稳定的分布式系统(第2版)笔记09_一窝蜂和容量 全球最资讯
满汉全席所有菜谱(求满汉全席食谱 谁有)|天天最资讯
环球快看:凤凰古城端午热:众人跳水抓鸭 场面火爆!
megacli_sw服务器Raid卡的设置过程 环球快播
高温下北京白天现星星:肉眼可见金星、月亮同框|焦点短讯
视讯!Epic喜加二:《猎人:野性的呼唤》《遗忘国度之闲置冠军》免费
《最终幻想16》等级上限解答:新游戏+解锁100级-世界观速讯
爱奇艺王晓晖:影视不是一门好生意,却可以是伟大的生意
风靡至今什么意思(风靡一时是什么意思)
清远职业技术学校是大专还是中专_清远职业技术学校
焦点热议:使用近10年,说说向大家推荐Linux系统的理由
【世界速看料】吃下肚的粽子是用什么叶子包的?知道真相的人太少了!
中央气象台发布今年首个高温橙色预警:17站点最高气温破历史极值!
随着快船错过布罗格登,这件事情彻底暴露了3个可笑的事实
人人可用的开源数据可视化分析工具 焦点快报
文心一言 VS 讯飞星火 VS chatgpt (44)-- 算法导论6.1 1题_每日热议
天天讯息:周润发《别叫我“赌神”》豆瓣短评出炉:烂片没的说!