增加Eureka

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

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

增加配置如下:

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

增加令牌中继

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

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

增加注解 @EnableFeignClients :

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

在调用方使用feign调用:

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

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

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

测试

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

代码地址:https://gitee.com/blueses/spring-boot-security 30 31 32 33

本文由博客一文多发平台 OpenWrite 发布!

最新文章

  1. nodejs学习笔记三——nodejs使用富文本插件ueditor
  2. JavaScript笔记:数据类型
  3. Mock框架
  4. js获取当前页面的url信息方法
  5. django 学习-16 Django会话Cookie
  6. WPF 渐隐渐现切换背景图片
  7. Android开发JDBC连接mysql数据库导入驱动方法
  8. Linux Shell编程(16)——循环
  9. (七)boost库之单例类
  10. windows消息机制与实例
  11. windows计划任务启动bat执行java文件
  12. 通过代码启动appium服务
  13. 第三十一篇-TextInputLayout(增强文本输入)的使用
  14. [译]Nuget.Server
  15. Spring Resource配置
  16. 转 ef中使用mysql步骤--Entity Framework 6 with MySql
  17. QQ登录整合/oauth2.0认证-02-跳转到QQ互联页
  18. git: fatal: Could not read from remote repository
  19. 移动 APP 网络优化概述
  20. sublime text 安装json插件

热门文章

  1. linux中find命令的使用详解(转载)
  2. The field file exceeds its maximum permitted size of 1048576 bytes.
  3. 面向对象(五)--isinstance与issubclass方法、反射、内置方法(部分)、异常处理
  4. Pods应用NFS存储
  5. Linux shell for循环结构
  6. nginx的 ngx.var ngx.ctx ngx.req
  7. 使用aptitude安装软件
  8. python基本数据类型的时间复杂度
  9. 【java异常】Expected one result (or null) to be returned by selectOne(), but found: 63
  10. 洛谷 p2055 假期的宿舍 题解