郭艺宾 · 2019年10月16日

SpringBootSecurity学习(25)前后端分离版之OAuth2.0 令牌中继

增加Eureka

前面介绍的项目都是授权服务和资源服务单独两个,这样在资源服务中的 check_token 地址都是写死的地址 :

file

下面我们把eureka加上,这样就可以直接用服务名了。eureka服务的搭建不再讨论,在服务中加eureka只需要改两个地方,就是加依赖和修改配置:

file

增加配置如下:

file

然后就可以把资源服务中的固定ip改为服务名:

file

增加令牌中继

从授权服务获取令牌以后,直接访问一个资源服务是没有问题的,但是如果资源服务又去调用其它资源服务,就会产生一个问题,就是令牌无法自动往下传递。要实现令牌中继我们就需要写一个拦截器,将token放到请求的header中。

首先在服务中增加feign组件:

file

增加注解 @EnableFeignClients :

file

注意上面的依赖和注解调用方和被调用方都要增加。然后在被调用方写一个接口:

file

在调用方使用feign调用:

file

然后在调用方写一个测试接口:

file

现在直接申请令牌,然后访问调用方测试接口,会出现如下401错误:

file

下面在调用方增加一个拦截器,在header中增加令牌:

file

测试

下面直接申请令牌,访问调用方的测试接口,可以看到令牌中继的结果:

file

代码地址:https://gitee.com/blueses/spr... 30 31 32 33

本文由博客一文多发平台 OpenWrite 发布!
推荐阅读
关注数
2
文章数
50
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息