使用sa 您所在的位置:网站首页 token信息错误 使用sa

使用sa

2023-03-25 15:26| 来源: 网络整理| 查看: 265

虽然紫菀草越被人践踏越长得快,可是青春越是浪费,越容易消失。——莎士比亚《亨利四世上篇》

1:首先引入sa-token依赖

12345 cn.dev33 sa-token-spring-boot-starter 1.28.0

有什么疑惑和问题可以去官方文档写的非常详细:https://sa-token.dev33.cn/doc/index.html#/

号称:手把手教你敲代码 狗头加持

2:从application.yml文件中配置sa-token

1234567891011121314151617181920server: # 端口 port: 8081# Sa-Token配置sa-token: # token名称 (同时也是cookie名称) token-name: satoken # token有效期,单位s 默认30天, -1代表永不过期 timeout: 2592000 # token临时有效期 (指定时间内无操作就视为token过期) 单位: 秒 activity-timeout: -1 # 是否允许同一账号并发登录 (为true时允许一起登录, 为false时新登录挤掉旧登录) is-concurrent: true # 在多人登录同一账号时,是否共用一个token (为true时所有登录共用一个token, 为false时每次登录新建一个token) is-share: false # token风格 token-style: uuid # 是否输出操作日志 is-log: false

然后就可以写咱们的业务代码了 咱们的今天主体是登录 所以就不写如何验证token以及统一拦截配置拦截器等操作。

3:业务代码

下方代码:首先判断当前是否传入用户名 如果传入了用户名使用Lambda表达式配合MP查询是否存在当前用户如果没有orElse返回为null并提示账号或密码错误 请您检查好账号密码重新输入

1Optional.ofNullable(userInfoDto.getUserName()).map(a -> userMapper.selectOne(new LambdaQueryWrapper().eq(TIdUser::getUserName, a))).orElse(null);

如果查询到当前用户就判断传输的密码是否正确这里使用MD5加密对比,如果存在及正确的话

存入会话id并删除redis错误日志然后返回用户信息

12345678if (user != null && userInfoDto.getPassword() != null && user.getPassword().equals(EncryptUtil.encrypt(userInfoDto.getPassword()))) { //在登录时写入当前会话的账号id StpUtil.login(user.getId()); //登录成功之后删除redis的错误日志 ipInfoUtil.getRedisIpInfo(true,request); return new Result(ResultCode.OK, UserInfoVo.builder().id(user.getId()).userName(user.getUserName()).realName(user.getRealname()) .branchVoList(userMapper.getBranchInfo(user.getId())).roleVoList(userMapper.getRoleInfo(user.getId())).build(), StpUtil.getTokenInfo().getTokenValue()); }

如果验证不通过的话根据当前用户IP往redis中添加一条错误日志 超过五次之后提示5分钟后重试

1return Optional.ofNullable(ipInfoUtil.getRedisIpInfo(false,request)).orElse(new Result(ResultCode.INTERNAL_SERVER_ERROR, "账号或密码错误 请您检查好账号密码重新输入"));

获取当前用户IP

4:效果

输入错误五次之后

输入正确账号密码之后返回用户信息以及token

明天在写如何使用sa-token验证!

今日鸡汤

如果不能钟爱自己从事的一份事业,不能从这个职位上找到自己的乐趣和小小的成就感,只是把它当成一个吃饭的工具,那么这个人一辈子都不会快乐。工作将占据一个人大部分时间,只是当成吃饭的工具,一件事做的时间久了,就会觉得没劲、无聊、麻木、机械,寻找到自己的小世界很重要,总要找点有趣充实的事情来消耗这漫长又短暂的人生。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有