很多网文对于springboot Security OAuth2对于授权码模式都是千篇一律介绍那些最基本的操作,很多新手都会那些操作,但慢慢就会迷惑懵懂了。这如何用于实际中?难道让用户去复制网址上的code,然后去post拿到token?这肯定是不行。基于这样问题,我做了个简单项目例子来说明
关于springboot Security OAuth2方面的概念基础知识,网上的教材多得是,我不重复了。
我用springboot的版本是2.1.2.RELEASE,springcloud的版本是Greenwich.RC2。本项目中有两个工程服务,a服务和b服务,两个pom.xml中都加入
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-oauth2</artifactId>
</dependency>
b服务中pom.xml多添加如下
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
先说测试结果
访问b服务不需认证的连接,b服务的端口为8082
16.jpg
点击获取数据后,会自动跳转到a服务的登陆界面,a服务的端口是8083
13.jpg
输入用户名和密码点击登陆后,转入授权界面
14.jpg
点击授权后,自动跳转到b服务刚才那个页面,自动获取到token,并从b服务那里获取得到数据
17.jpg
端口是8082,地址多了参数。页面多了个5数字,是从b服务器中带上token获取的,控制台打印出token。在这个项目里没去掉地址后面的参数。
网友评论