Spring Security结合JWT的方法教程
概述
众所周知使用JWT做权限验证,相比Session的优点是,Session需要占用大量服务器内存,并且在多服务器时就会涉及到共享Session问题,在手机等移动端访问时比较麻烦
而JWT无需存储在服务器,不占用服务器资源(也就是无状态的),用户在登录后拿到Token后,访问需要权限的请求时附上Token(一般设置在Http请求头),JWT不存在多服务器共享的问题,也没有手机移动端访问问题,若为了提高安全,可将Token与用户的IP地址绑定起来
前端流程
用户通过AJAX进行登录得到一个Token
之后访问需要权限请求时附上Token进行访问
Title varheader=""; functionlogin(){ $.post("http://localhost:8080/auth/login",{ username:$("#username").val(), password:$("#password").val() },function(data){ console.log(data); header=data; }) } functiontoUserPageBtn(){ $.ajax({ type:"get", url:"http://localhost:8080/userpage", beforeSend:function(request){ request.setRequestHeader("Authorization",header); }, success:function(data){ console.log(data); } }); } 访问UserPage