iframe带了token不显示_不就是登录吗,能有多复杂?sa-token带你轻松搞定多地登陆、单地登录、同端互斥登录...

前言

在java的世界里,有很多优秀的权限认证框架,如Apache Shiro、Spring Security 等等。这些框架背景强大,历史悠久,其生态也比较齐全。

但同时这些框架也并非十分完美,在前后台分离已成标配的互联网时代,这些老牌框架的很多设计理念已经相当滞后,无法与我们的项目完美契合。

而今天我要介绍的这款框架,专门为前后台分离架构而生, 功能强大, 上手简单 —— sa-token。

sa-token是什么?

sa-token是一个轻量级Java权限认证框架,主要解决: 登录认证、权限认证、Session会话 等一系列权限相关问题。

sa-token的API调用非常简单,一行代码即可搞定登录授权,废话不多说,我们直接上代码:

1. 添加pom依赖

<!-- sa-token 权限认证, 在线文档:http://sa-token.dev33.cn/ --><dependency><groupId>cn.dev33</groupId><artifactId>sa-token-spring-boot-starter</artifactId><version>1.12.0</version></dependency>

2. 调用框架API进行登录

// 在用户账号密码验证成功后,直接调用以下API进行登录授权StpUtil.setLoginId(10001);

至此,我们已经借助sa-token框架完成登录授权!

此时的你的小脑袋可能飘满了问号,就这么简单?自定义Realm呢?全局过滤器呢?我不用写各种配置文件吗? 事实上在此我可以负责的告诉你,在sa-token中,登录授权就是如此的简单,不需要什么全局过滤器,不需要各种乱七八糟的配置!只需要这一行简单的API调用,即可完成会话的登录授权! 当你受够Shiro、Security等框架的三拜九叩之后,你就会明白,相对于这些传统老牌框架,sa-token的API设计是多么的清爽! 拒绝引入复杂的概念,以实际业务需求为第一目标进行定向突破,业务上需要什么,sa-token就做什么,不搞各种云里雾里的高大上概念,以化繁为简为第一目标!

3.除了以上的登录授权,sa-token还可以一行代码完成以下功能:

        StpUtil.setLoginId(10001);          // 标记当前会话登录的账号idStpUtil.getLoginId();               // 获取当前会话登录的账号idStpUtil.isLogin();                  // 获取当前会话是否已经登录, 返回true或falseStpUtil.logout();                   // 当前会话注销登录StpUtil.logoutByLoginId(10001);     // 让账号为10001的会话注销登录(踢人下线)StpUtil.hasRole("super-admin");     // 查询当前账号是否含有指定角色标识, 返回true或falseStpUtil.hasPermission("user:add");  // 查询当前账号是否含有指定权限, 返回true或falseStpUtil.getSession();               // 获取当前账号id的Session StpUtil.getSessionByLoginId(10001); // 获取账号id为10001的SessionStpUtil.getTokenValueByLoginId(10001);  // 获取账号id为10001的token令牌值StpUtil.setLoginId(10001, "PC");        // 指定设备标识登录StpUtil.logoutByLoginId(10001, "PC");   // 指定设备标识进行强制注销 (不同端不受影响)StpUtil.switchTo(10044);                // 将当前会话身份临时切换为其它账号 

sa-token的API众多,请恕此处无法逐一为您展示,以上示例只是框架能力的很小一部分能力展示。

在sa-token中,各种与登录鉴权相关功能:踢人下线、自动续签、同端互斥登录等常见业务均可以一行代码调用实现

关于sa-token的授权登录先介绍至此,接下来的章节我会陆续介绍sa-token框架的其它各种强大能力。

写在最后

源码开源,作者不易,如果你喜欢这个框架麻烦你随手点一颗小星星哦!

官网文档:http://sa-token.dev33.cn/

Gitee开源地址: https://gitee.com/sz6/sa-token

GitHub开源地址: https://github.com/click33/sa-token

cdf186c2d6b8f6c96d29e1e7cccd55ed.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/412224.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

该文件可能是只读的 或者您要访问的位置_喔噢小贴士:如何保护PPT不被更改,将其设为只读...

如果要阻止其他人对Microsoft PowerPoint演示文稿进行编辑&#xff0c;或者让其他人知道您发送的文件是最终版本&#xff0c;则可以将其设为只读。只需要几步点击。注意&#xff1a;虽然将PowerPoint演示文稿设为只读可以很好地阻止其他人编辑您的内容&#xff0c;但解锁只读演…

c语言向文件中写入字符串_C语言中定义字符串的两种方式及其比较

先看如下代码&#xff1a;以上用两种方式定义一个字符串&#xff1a;1、定义一个char * 类型指针&#xff0c;指向字符串首字符首地址。2、定义一个数组&#xff0c;数组里存放元素为字符串各个字符0,其中0为码0值&#xff0c;编译器会自动在字符串的末尾添加此值。先看这两个&…

前端学习(2879)歌谣学习篇原生js和canvas实现弹幕功能

我是歌谣 放弃很难 坚持一定很酷 2021继续加油 目录结构 文件地址 源码地址后面可见 源码文件 index.css body { margin: 0; } .container { width: 1000px; margin: 0 auto; } .video-wrapper { position: relative; } .video-wrapper video { width: 100%; } .video…

汤姆逊灯

由 MIT (Massachusetts Institute of Technology) 哲学教授在1954年提出&#xff1a;考虑一盏开关由一个复杂的定时器控制的灯。实验开始时&#xff0c;灯是开着的&#xff0c;并且正好开一分钟。这一分钟结束时定时器把灯关闭&#xff0c;这样持续半分钟。之后&#xff0c;又把…

python def函数_Python教程之Lambda表达式知识概述

在Python中&#xff0c;除了def之外&#xff0c;还提供了一种生成函数对象的表达式形式&#xff0c;即Lambda表达式&#xff0c;它可以创建小的匿名函数&#xff0c;起到一个函数速写的作用。接下来的好程序员Python学习课程就给大家分享Lambda表达式相关的知识点。Lambda表达式…

MySQL全文索引模糊查询_mysql全文索引之模糊查询

旧版的MySQL的全文索引只能用在MyISAM表格的char、varchar和text的字段上。不过新版的MySQL5.6.24上InnoDB引擎也加入了全文索引&#xff0c;所以具体信息大家可以随时关注官网&#xff0c;下面我来谈谈mysql全文索引的用法,网上很多啦&#xff0c;我只讲讲我所了解滴部分哈&am…

html中内容超出显示省略号的方法

html中内容超出显示省略号的方法 本博客主要介绍 前端开发中文本过多&#xff0c;以省略号显示。 效果如图&#xff1a; 单行&#xff1a; <!--单行--> <p class"pl">这个属性定义溢出元素内容区的内容会如何处理。如果值为 hidden&#xff0c;当点击hid…

vue 多选自动触发_Vue,初次邂逅(二)

一、前言二、Vue常用指令2.1 什么是指令&#xff1f;指令 (Directives) 是带有 v- 前缀的特殊特性。指令特性的预期值是&#xff1a;单个 JavaScript 表达式。指令的职责是&#xff0c;当表达式的值改变时&#xff0c;将其产生的连带影响&#xff0c;响应式地作用于 DOM。 例如…

string.Empty 和 并不总是可以互换的

在 C# 中&#xff0c;大多数情况下 "" 和 string.Empty 可以互换使用。比如&#xff1a;strings "";strings2 string.Empty;if(s string.Empty) { // }但是我发现有一种情况下只能是用常数形式&#xff1a; "", 而不能使用 string.Empty 这个静…

pythonweb服务器部署iis_IIS部署python Web(FLASK试例)

开发环境&#xff1a;python3.6 、win7、pycharm20171、安装及配置IIS控制面板中>-程序和功能>-打开或关闭WINDOWS功能配置Internet信息服务配置万维网服务2、安装URL重写组件下载安装Web平台安装程序 5.0 (WEB PLATFORM INSTALLER 5.0)安装URL Rewrite 2.03、安装wfastc…

WPF开源框架项目

好久博客未更新新博文了&#xff0c;今天介绍一个WPF开源框架MaterialDesignInXamlToolkit废话不多说先让我们来看看框架得几张截图 让我们一起来看看源代码得结构如下图 接下我们运行代码看看运行后得截图 通过查看源代码, 由于是基于原生得状态进行修改样式及动画达到, 所以引…