html做一个简单的网页,seo公司哪家好,手机网站制作视频教程,搜索引擎优化案例因为session有数据共享问题#xff0c;不同tomcat服务器中的session不能共享#xff0c;之后负载均衡就无法实现。所以我们用redis代替session。redis可以被多个tomcat服务器共享#xff0c;redis基于内存。
之前的session可以看做登陆凭证#xff0c;本次登陆凭证由sessi…因为session有数据共享问题不同tomcat服务器中的session不能共享之后负载均衡就无法实现。所以我们用redis代替session。redis可以被多个tomcat服务器共享redis基于内存。
之前的session可以看做登陆凭证本次登陆凭证由session变为token。
手机号验证码登陆
1.用户发送请求携带手机号参数获取验证码后端随机生成验证码并把手机号和验证码存入redis。调用第三方平台把验证码发到用户手机。 2.用户输入验证码发送请求(携带参数手机号参数验证码)进行登陆后端从redis查询是否有对应的手机号验证码。有就登陆成功根据手机号查询用户信息随机生成登陆凭证token把token和用户信息存入redis。返回结果给前端时会把token存入Result中返回给前端。之后前端每次发送请求时请求头中都会携带token。 3.之后用户每次发送请求都携带登陆凭证token用户发送的请求会被拦截器拦截之前的login服务不会被拦截拦截后根据token查询redis中是否有对应的用户信息有就把用户基本信息存入ThreadLocal中以供本次请求使用然后放行请求。
下图中可以看出用户的发送的请求请求头中携带token这需要在前端自己设置Authorization这个属性名是前端自定义的
账号密码登陆
1.用户输入账号密码发送请求(携带参数账号参数密码)进行登陆后端从数据库中查询是否有对应的账号密码。有就登陆成功根据账号查询用户信息随机生成登陆凭证token把token和用户信息存入redis。返回结果给前端时会把token存入Result中返回给前端。之后前端每次发送请求时请求头中都会携带token。 2.之后用户每次发送请求都携带登陆凭证token用户发送的请求会被拦截器拦截之前的login服务不会被拦截拦截后根据token查询redis中是否有对应的用户信息有就把用户基本信息存入ThreadLocal中以供本次请求使用然后放行请求。