增加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 發布!
