当前位置: 首页 > news >正文

北京网站建设价格便宜营销型网站建设域名

北京网站建设价格便宜,营销型网站建设域名,姚家园做网站,沪尚茗居上海门店地址目录 1 前言 2 实现步骤 2.1 软件环境准备 2.1.1 Redis的安装 2.1.2 在pom.xml中添加依赖 2.1.3 在application.yml中进行相关配置 2.2 StringRedisTemplate的常用方法 2.2.1 获取operations 2.2.2 主要方法 2.3 令牌主动失效机制 2.3.1 登录时将令牌存入Redis 2.…目录 1 前言 2 实现步骤 2.1 软件环境准备 2.1.1 Redis的安装 2.1.2 在pom.xml中添加依赖 2.1.3 在application.yml中进行相关配置 2.2 StringRedisTemplate的常用方法 2.2.1 获取operations 2.2.2 主要方法  2.3 令牌主动失效机制 2.3.1 登录时将令牌存入Redis 2.3.2 修改密码时删除旧的令牌 2.3.3 拦截器中进行检验 1 前言 在我们使用JWT令牌进行登录验证的时候不可避免的也会出现一些问题。比如当用户修改密码后旧的令牌仍然生效。因此我们可以采用Redis进行登录的优化。 2 实现步骤 2.1 软件环境准备 2.1.1 Redis的安装 百度网盘的链接如下解压即可使用 链接https://pan.baidu.com/s/1nAXT6alX-pMxxSfAe6-tsw?pwd0529  提取码0529 2.1.2 在pom.xml中添加依赖 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-data-redis/artifactId /dependency 在添加依赖后会自动向IOC容器中注入StringRedisTemplate对象通过它我们可以对Redis数据库进行相关操作。 2.1.3 在application.yml中进行相关配置 #redis初始状态没密码所以暂时不需要配置 spring:data:redis:port: 6379 #端口号host: localhost #本地database: 0 #redis有16个小库默认0 2.2 StringRedisTemplate的常用方法 2.2.1 获取operations Autowired private StringRedisTemplate stringRedisTemplate; //其它 ValueOperationsString, String operations stringRedisTemplate.opsForValue();2.2.2 主要方法  相关方法作用参数operations.set(xx, xx, 1, TimeUnit.HOURS);//过期时间为1小时向Redis中插入键值均为xx的数据 1.键(String) 2.值(String) 3.过期时间数(long) 4.时间数单位(TimeUnit.xx) 注3和4可以不要 operations.get(xx);从Redis中获取键为xx的值键(String)operations.getOperations().delete(xx);删除Rdis键为xx的键值对键(String) 2.3 令牌主动失效机制 2.3.1 登录时将令牌存入Redis public class UserController {PostMapping(/login)public ResultString login(//其它) {//其它代码//获得JWT令牌String token JwtUtil.genToken(claims);//将JWT令牌存入RedisValueOperationsString, String operations stringRedisTemplate.opsForValue();//过期时间要和JWT令牌保持一致operations.set(token, token, 1, TimeUnit.HOURS);}//其它代码 } 2.3.2 修改密码时删除旧的令牌 public class UserController {//其它代码PatchMapping(/updatePwd)//RequestHeader(name Authorization) String token从请求头中获取JWT令牌public Result updatePwd(RequestBody MapString, String params, RequestHeader(name Authorization) String token) {//其它代码//删除Redis中旧的JWT令牌ValueOperationsString, String operations stringRedisTemplate.opsForValue();operations.getOperations().delete(token);} } 2.3.3 拦截器中进行检验 public class LoginInterceptor implements HandlerInterceptor {//其它Overridepublic boolean preHandle(//其它) {try {//其它代码//没获取到值则不放行ValueOperationsString, String operations stringRedisTemplate.opsForValue();if (operations.get(token) null) {throw new RuntimeException();}//放行return true;} catch (Exception e) {//不放行return false;}} }
http://www.dnsts.com.cn/news/180157.html

相关文章:

  • 魏县网站建设怎么设计软件
  • 网站建设套模板视频wordpress 图片裁剪
  • 盘锦网站制作公司六安商务网站建设电话
  • 汕头建站模板系统企业建站要多少钱
  • 做网站的服务器还需要空间吗城乡建设部官网
  • 做单页免费模板网站个人网站建设如何选服务器
  • 广州购物商城网站重构网站
  • 厦门论坛网站建设青海学会网站建设公司
  • 做网站的图片素材网站有哪些查询站长工具会给网站带来外链这样好吗
  • 如何给网站添加icoseo名词解释
  • 邢台如何做企业网站提供网站建设小程序制作
  • 可以做长页海报的网站公司内部 网站开发
  • 新开传奇网站刚开一秒第一区12580黄页注册的公司
  • 安徽省建设厅网站官网网站模板html
  • 合肥建设局网站官网乌海市建设工程网站
  • 温州网站优化关键词公司网站制作机构
  • 什么网站可以做国外生意网站开发语言php
  • 网站开发海口苏州网络推广公司有哪些
  • 福田网站建设新闻成都网站建设索q479185700
  • 女排联赛排名深圳网站seo服务
  • 衡阳seo网站推广设计制作的基本步骤是什么
  • <网站建设与运营》数据分析师培训需要多少钱
  • 江苏建设人才无纸化考核网站网页设计专业培训
  • 公司做网站算什么费用网站带支付模板
  • 官方建网站有哪些步骤洛阳网站seo
  • 公司网站地址网站建设推广扬州
  • 网站建设套路重庆建设企业网站
  • 和韩国做贸易的网站森东网站建设
  • 深圳网站优化方案wordpress用户留言插件
  • 怎么样免费做自己的网站网站空间为什么都比数据库大