离石做网站的网络公司,免费制作二级网站,五合一免费建站,华为电子商务网站建设登录功能
没什么好写的#xff0c;就是LoginController层里面要注入empService的对象
登录校验#xff08;重点#xff09;
没有校验的情况
没有登录之前#xff0c;访问数据的网址需要跳转到登录页面。
http是无状态的#xff0c;处理其他业务时没有判断他是否登录 …登录功能
没什么好写的就是LoginController层里面要注入empService的对象
登录校验重点
没有校验的情况
没有登录之前访问数据的网址需要跳转到登录页面。
http是无状态的处理其他业务时没有判断他是否登录 会话技术
会话用户打开浏览器访问web服务器的资源会话建立直到有一方断开连接会话结束。一次会话可以包含多次请求和响应。
会话跟踪服务器需要识别多次请求是否来自同一浏览器以便在同一会话的多次请求间共享数据。
客户端会话跟踪技术cookie服务器会话跟踪技术session令牌技术
cookie
不能识别c1和c2在maven pom里面添加依赖
dependencygroupIdorg.apache.httpcomponents/groupIdartifactIdhttpcore/artifactIdversion4.3.3/version
/dependency 优点http协议中支持的技术
缺点
移动端app无法使用cookie用户可以自己禁用cookie不能跨域前端和后端ip地址不一样
session
底层基于cookie 优点存储在服务端安全
缺点服务器集群环境下无法使用session
jwt令牌
优点支持pc和移动端、解决集群环境下的认证问题、减轻服务器端存储压力
jwt令牌可以直接存储用户信息
场景登录认证
登录成功后生成令牌后续每个请求都要携带jwt令牌系统在每次请求处理之前先校验令牌通过后再处理
jwt生成
引入jjwt依赖调用Jwts完成jwt生成和校验 Jwts.builder().signWith(SignatureAlgorithm.HS256, itheima) //设置签名算法.setClaims(claims)//自定义内容(载荷).setExpiration(new Date(System.currentTimeMillis() 3600 * 1000))//设置有效期为1h.compact();Claims claims Jwts.parser().setSigningKey(itheima).parseClaimsJws(eyJhbGciOiJIUzI1NiJ9.eyJuYW1lIjoidG9tIiwiaWQiOjEsImV4cCI6MTcwODQyNDc0N30.OsHQF89smb6VhwkaAWUCHFz2M5Ef8_Z2NMyqTVAyN64).getBody();System.out.println(claims); 只要不一样或者过期都不能成功解析
登录后下发令牌
令牌生成登录成功后生成jwt令牌返回给前端
令牌校验请求到达服务端后对令牌进行统一拦截、校验
过滤器Filter
过滤器可以把对资源的请求拦截下来从而实现一些特殊的功能 过滤器链 注解方式配置的filter优先级按照类首字母的优先级排列
登录校验过滤器 拦截器Interceptor
要有两个东西
* 定义拦截器 * 注册配置拦截器
异常处理