首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
等凛
门头沟学院 Java
发布于北京
关注
已关注
取消关注
@Java三段:
华为一面:谈谈你对JWT的理解?
JWT(JSON Web Token) 是一种开放标准(RFC 7519),用于在网络应用间安全传输信息,通常用于身份验证和信息交换。其核心特点是通过紧凑且自包含的 JSON 对象传递数据,无需服务端存储会话状态。1.为什么需要JWT?开发中需要 JWT 的主要原因是为了解决传统基于 Session 的身份验证方法中存在的问题,比如跨域认证不便、扩展性差等问题。而 JWT 允许我们设计无状态的、分布式的 Web 应用,通过在每个请求中传递 Token 来验证用户身份,从而实现更加灵活和可扩展的架构。2.执行流程JWT 执行流程如下:它的主要执行流程如下:用户登录成功后,服务器根据用户信息生成一个 JWT 的 Token 令牌。服务器将此 Token 返回给客户端,客户端通常存储在 Cookie 或 LocalStorage 中。之后客户端在访问服务器端时会携带这个 Token,一般放在 HTTP 头中。服务器接收到请求后,解析 JWT,验证其签名有效性以及是否过期。如果验证成功,则处理相应的请求;否则,返回错误信息(重新登录)。3.JWT组成JWT 是由三部分组成的:Header(头部):通常由以下两部分组成:Token 类型:通常是 JWT。加密算法:例如 HS256(HMAC SHA-256)、RS256(RSA SHA-256)等。Payload(载荷) :JWT 的主体部分,通常为以下三类:标准声明(Registered Claims):预定义的字段,如 iss(发行者)、exp (过期时间)、sub(主题)等。公共声明(Public Claims):用户自定义的字段,例如用户 ID、用户名、角色等。私有声明(Private Claims):在特定场景下使用的字段,通常用于内部系统。Signature(签名):用于验证 Token 的完整性和防止篡改。它们之间用点“.”分隔,形成一个字符串(Token)。4.JWT核心实现代码在 Spring Boot 项目中,首先要引入 JWT 工具依赖,之后通过以下核心代码可以生成 Token,以及验证 Token:// 生成 JWT(示例)|SECRET_KEY 为服务保存的密钥。public String generateToken(UserDetails user) { return Jwts.builder() .setSubject(user.getUsername()) .setExpiration(new Date(System.currentTimeMillis() + 3600 * 1000)) .signWith(SignatureAlgorithm.HS256, SECRET_KEY) .compact();}// 验证 JWT(示例)public boolean validateToken(String token) { try { Jwts.parser().setSigningKey(SECRET_KEY).parseClaimsJws(token); return true; } catch (Exception e) { return false; }}注意事项密钥安全:签名密钥需妥善保管,并定期修改,避免泄露。无状态性:JWT 无需服务端存储会话信息,适合分布式系统。5.JWT VS SessionJWT 和 Session 主要区别如下:存储位置不同:Session 通常将用户会话信息存储在服务器端,而 JWT 则将信息存储在客户端。状态管理不同:Session 是基于服务端的状态机制,需要服务器保存会话状态;JWT 是无状态的,所有的信息都包含在 Token 中,服务端无需保存任何状态。隐私性不同:由于 JWT 的信息直接暴露给用户,因此敏感信息不应该存储在 JWT 中。Session 因为只在服务端维护,隐私性相对更好一些。扩展性和性能不同:JWT 非常适合分布式系统,因为它不依赖于服务端的状态。对于大型分布式系统,JWT 可以显著减少服务器资源的消耗,提高系统的响应速度。6.JWT存在的问题尽管 JWT 有很多优点,但也存在一些挑战:大小限制:由于 JWT 是以 HTTP 头部的形式发送的,所以它的大小受到限制。如果 JWT 中包含过多的数据,可能会导致请求头过长的问题。解决办法是尽量保持 JWT 简洁,仅包含必要的信息。令牌撤销问题:一旦 JWT 被签发,除非过期,否则无法轻易撤销。安全性考虑:虽然 JWT 本身支持签名和加密,但如果密钥泄露,将会导致严重的安全隐患。因此,确保密钥的安全管理和定期更新是非常重要的。小结JWT 提供了一种有效的方法来处理用户身份验证和信息交换的问题,也是目前主流的用户登录验证机制,但同时也需要注意上述提到的一些潜在风险和限制,它更适用于分布式大型项目的用户信息传输和登录权限判断。
点赞 1
评论 1
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
07-24 15:32
顺丰集团_大数据挖掘与分析工程师(准入职员工)
顺丰内推
已经来工作一个多月啦,感觉幸福度很高,顺丰真的是很值得来的一家公司!公司里的氛围很好,同事们很nice很好沟通,和大家私下相处也贼融洽。工作很充实但是没什么压力,领导带教都不push,感觉每天来公司都很开心~💼 公司岗位数据分析💢 工作强度在整个集团里算卷的,顺丰科技大多数部门965美滋滋,但是我进的部门业务多975,双休基本可以保证,需求多的话周末也要赶一下进度。🫶️ 团队氛围进的团队好,前辈都很热心教人,有问必答。❤️ 职场感受希望我这次转正能通过吧,能过的话会来报喜😊6月还有HC!!!顺丰科技25届校招+26届暑期实习内推启动!【🍀内推码】0H0PCC(简历来源选择校园大使)【...
顺丰集团工作强度 152人发布
点赞
评论
收藏
分享
07-25 10:31
门头沟学院 Java
科大讯飞笔试
求问各位大佬,笔试都考点啥
投递科大讯飞等公司10个岗位
点赞
评论
收藏
分享
06-09 23:48
贵州大学 Java
26届无实习,六月份还有机会吗?
某聘连着投了几天,发了两三百份实习沟通,回复的HR寥寥无几,发了十多次简历,且大多还都是已读不回,还没面试过,只拿到一个远程全栈开发,叫我写前端我拒了,这可如何是好,还有补救机会吗?如果没实习,秋招还有机会吗?
陈100:
实习和你秋招关系不是特别大,又不是所有的实习生入职公司都能学到东西。 有实习只是增加面试机会了而已。
无实习如何秋招上岸
点赞
评论
收藏
分享
07-25 11:49
已编辑
河北大学 Java
我又被卡背景了兄弟们
京东二面过了,因为空窗期被刷掉了美团二面过了,因位空窗期被刷掉了我顶不住了兄弟们,人生为何如此艰难啊,大厂我面了好多了,一轮又一轮,一茬又一茬,简历不断更新,技术不断全面,算法不断深化,面试官都很满意,最后给我干掉,我不甘心啊。
勇敢的小饼干觉醒了:
兄弟,我给你讲三点...
面试问题记录
点赞
评论
收藏
分享
昨天 13:25
门头沟学院 客户端其它
扪心自问,你配ssp吗
ssp级别的offer仅占5%,你问问你自己,你学历、竞赛经历、项目经历、实习经历,你都做到极致了吗。来来来,咱算算,你要拿到ssp的offer,你的脚下要踩着多少人。首先要先拿到白菜级别的offer,这关录取率取平均值仅为2%,sp级别的offer占白菜级别的60%-80%,ssp级别占sp级别的5%。2%*80%*5% = 0.08%,也就是说,一个ssp级别的offer是1250人在竞争,2024年国考录取率是1.75%,这TMD比国考都难,能拿到ssp级别的大佬,堪比大熊猫。人贵在认清现实,但这并不是最重要的,最重要的是,你在看清现实之后,依旧拥有一颗不放弃、赤诚火热的心!!!你理想的...
熬夜脱发码农:
多少算sp啊?这个是谈薪的时候会说吗?还是下来offer以后看薪资说着是不是sp啊?21k的话是白菜价吧?24k呢?
《有啥说啥》栏目
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
大模型应用开发面经 (5年经验)
6794
2
...
别害怕前端手写,真没想象的难
5289
3
...
实习都是CRUD怎么包装
3925
4
...
2025 年了,万分推荐的前端学习路径!!!
3909
5
...
🍀双非鼠鼠上岸大厂攻略🍀
3718
6
...
先放弃找大厂的想法了
2264
7
...
滴滴提前批
2221
8
...
扪心自问,你配ssp吗
1634
9
...
"你能接受加班吗?"——当代求职者最想翻白眼的面试问题
1563
10
...
经典问题,保研还是就业😵
1556
创作者周榜
更多
正在热议
更多
#
26届的你,投了哪些公司?
#
2066次浏览
38人参与
#
我对___祛魅了
#
6980次浏览
66人参与
#
中兴秋招
#
184346次浏览
2049人参与
#
如何快速融入团队?
#
2616次浏览
48人参与
#
简历上的经历如何包装
#
3394次浏览
95人参与
#
和同事相处最忌讳的是__
#
4847次浏览
55人参与
#
什么样的背景能拿SSP?
#
6151次浏览
64人参与
#
工作中哪个瞬间让你想离职
#
34780次浏览
255人参与
#
你遇到最难的面试题目是_
#
1249次浏览
28人参与
#
职场常用语录大全
#
5381次浏览
41人参与
#
职场人,说说你的烦心事
#
12898次浏览
108人参与
#
你最讨厌面试问你什么?
#
3236次浏览
67人参与
#
我和mentor的爱恨情仇
#
60446次浏览
362人参与
#
哪些公司校招卡第一学历
#
85897次浏览
370人参与
#
工作中的卑微时刻
#
20124次浏览
164人参与
#
打工人的精神状态
#
63627次浏览
1066人参与
#
机械人,秋招第一次笔试的企业是哪家?
#
42507次浏览
336人参与
#
奇葩时刻大赏
#
56102次浏览
234人参与
#
元戎启行求职进展汇总
#
34596次浏览
256人参与
#
在职场上,你最讨厌什么样的同事
#
18011次浏览
175人参与
#
如果重来一次你还会读研吗
#
181286次浏览
1821人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务