04 动力云客之登录后获取用户信息+JWT存进Redis+

在这里插入图片描述

1. 登录后获取用户信息

非常好实现. 只要新建一个controller, 并调用SS提供的Authentication对象即可

package com.sunsplanter.controller;

@RestController
public class UserController {
   

    @GetMapping(value = "api/login/info")
    public R loginInfo(Authentication authentication) {
   
        TUser tUser = (TUser)authentication.getPrincipal();

        return R.OK(tUser);
    }

}

未登录状态下可以直接访问 api/login/info吗?

不可以. 因为在安全配置类已经写明了, 仅登陆界面允许任何人访问, 其他所有界面都需要认证

<由于未写JWT, 默认使用Session 保存会话,> ???好像不对
因此只要我们先通过登录接口登录, 然后再直接访问获取用户信息接口即可
在这里插入图片描述

2. 使用JWT打通登录后各个页面的认证

前后端分离的项目一般会使用token(jwt)实现登录状态的保持;(java web : session)

token其实就是一个随机字符串(字符串要求是唯一的,不同人的token都不能相同),当用户在登录页面输入账号和密码后,前端将账号密码发送给后端,后端检验完账号和密码后,会生成一个随机不重复的字符串即(token),并将其响应给前端,前端拿到token后,需要在客户端进行持久化存储(一般会写在localStorage或者sessionStorage中),那么下次在向后端数据接口发送请求的时候,一般需要将token一并发送给后端数据接口,后端数据接口会对token进行校验,如果合法则正常响应请求,如果不合法,则提示未登录。

2.1 sessionStorage与localStorage

它们是javascript对象,浏览器支持这两个对象,可以直接使用. 属于前端范畴
localStorage和sessionStorage都是用来在浏览器客户端存储临时信息的对象;

sessionStorage、localStorage区别?
sessionStorage只在一个浏览器页面有效,比如你打开一个新的tab浏览器页会失效,你关闭浏览器后,再打开浏览器也会失效;
localStorage在整个浏览器中都有效,重启浏览器也有效;除非你手动删除了localStorage,才会失效;

2.2 修改登录成功拦截器

根据流程图, 在查询到对象并返回给SS后, SS会调用成功拦截器, 就在这个拦截器中, 根据查询到的对象生成JWT并同时存进Redis和返回前端.

相关推荐

  1. 使用JWTRedis + token实现用户登录的两种方式。

    2024-02-21 08:08:03       14 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-21 08:08:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-21 08:08:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-21 08:08:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-21 08:08:03       18 阅读

热门阅读

  1. 寄存器 Flip-Flop

    2024-02-21 08:08:03       20 阅读
  2. 拍立淘助力电商新趋势:以图搜图购物成主流

    2024-02-21 08:08:03       30 阅读
  3. LeetCode 56 合并区间

    2024-02-21 08:08:03       31 阅读
  4. ddp是什么意思

    2024-02-21 08:08:03       29 阅读
  5. Rust语言之多线程

    2024-02-21 08:08:03       21 阅读
  6. 【编程】C++语言编程规范-2

    2024-02-21 08:08:03       26 阅读
  7. Android Studio 的六种基本布局

    2024-02-21 08:08:03       26 阅读
  8. py2neo和neo4j

    2024-02-21 08:08:03       27 阅读