概述
众所周知使用 JWT 做权限验证,相比 Session 的优点是,Session 需要占用大量服务器内存,并且在多服务器时就会涉及到共享 Session 问题,在手机等移动端访问时比较麻烦
而 JWT 无需存储在服务器,不占用服务器资源(也就是无状态的),用户在登录后拿到 Token 后,访问需要权限的请求时附上 Token(一般设置在Http请求头),JWT 不存在多服务器共享的问题,也没有手机移动端访问问题,若为了提高安全,可将 Token 与用户的 IP 地址绑定起来
前端流程
用户通过 AJAX 进行登录得到一个 Token
之后访问需要权限请求时附上 Token 进行访问
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script> <script type="application/javascript"> var header = ""; function login() { $.post("http://localhost:8080/auth/login", { username: $("#username").val(), password: $("#password").val() }, function (data) { console.log(data); header = data; }) } function toUserPageBtn() { $.ajax({ type: "get", url: "http://localhost:8080/userpage", beforeSend: function (request) { request.setRequestHeader("Authorization", header); }, success: function (data) { console.log(data); } }); } </script></head><body> <fieldset> <legend>Please Login</legend> <label>UserName</label><input type="text" id="username"> <label>Password</label><input type="text" id="password"> <input type="button" onclick="login()" value="Login"> </fieldset> <button id="toUserPageBtn" onclick="toUserPageBtn()">访问UserPage</button></body></html>
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
软考中级精品资料免费领
- 历年真题答案解析
- 备考技巧名师总结
- 高频考点精准押题
- 资料下载
- 历年真题
193.9 KB下载数265
191.63 KB下载数245
143.91 KB下载数1148
183.71 KB下载数642
644.84 KB下载数2756
相关文章
发现更多好内容- 如何使用 Java 的 Scanner 类?(Java的Scanner如何使用)
- 如何确保Docker中的Redis高可用性
- 如何运行 Java 的 class 文件?(java运行class文件的方法是什么)
- 多起自杀事件背后,互联网人在经历什么?
- 一张图帮你记忆,Spring Boot应用在启动阶段执行代码的几种方式
- 利用物联网可穿戴设备和传感器来减轻变老的痛苦
- 12月报告出炉:Windows 10市场份额略有上升 Chrome略有下降
- 5G来袭,将来你可能不需要上班了
- 2020年来了,关于人工智能你必须了解的这些事
- Java 中悲观锁和乐观锁的定义及实现方法有哪些?(java悲观锁乐观锁定义的方法是什么)
猜你喜欢
AI推送时光机Spring Security结合JWT的方法教程
后端开发2023-05-30
Spring整合Struts2的两种方法小结
后端开发2023-05-31
ActiveMQ结合Spring收发消息的方法
后端开发2024-04-02
Javascript中replace方法与正则表达式的结合使用教程
后端开发2024-04-02
从0到1上手Spring的方法教程
后端开发2024-04-02
利用Spring Boot操作MongoDB的方法教程
后端开发2023-05-31
如何在 ASP 中使用 Spring 教程的响应方法?
后端开发2023-10-29
gulp安装以及打包合并的方法教程
后端开发2022-06-04
基于Spring(Boot)下策略模式的使用方法教程
后端开发2024-04-02
基于Spring Cloud与Vue.js的前后端部署方法教程
后端开发2024-04-02
适合初学者的Python装饰器的方法教程
后端开发2023-06-16
利用Spring Data MongoDB持久化文档数据的方法教程
后端开发2023-05-31
Spring Boot打包不同环境配置与Shell脚本部署的方法教程
后端开发2023-06-16
结合线程池实现apache kafka消费者组的误区及解决方法
后端开发2024-04-02
shell中的数组操作小结和冒泡排序实现脚本的方法教程
后端开发2023-06-09
咦!没有更多了?去看看其它编程学习网 内容吧