SpringBootSecurity中什么是OAuth2.0令牌中繼,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
創(chuàng)新互聯(lián)公司是一家專注于成都做網站、網站設計與策劃設計,紅安網站建設哪家好?創(chuàng)新互聯(lián)公司做網站,專注于網站建設十多年,網設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:紅安等地區(qū)。紅安做網站價格咨詢:18982081108
前面介紹的項目都是授權服務和資源服務單獨兩個,這樣在資源服務中的 check_token 地址都是寫死的地址 :
下面我們把eureka加上,這樣就可以直接用服務名了。eureka服務的搭建不再討論,在服務中加eureka只需要改兩個地方,就是加依賴和修改配置:
增加配置如下:
然后就可以把資源服務中的固定ip改為服務名:
從授權服務獲取令牌以后,直接訪問一個資源服務是沒有問題的,但是如果資源服務又去調用其它資源服務,就會產生一個問題,就是令牌無法自動往下傳遞。要實現令牌中繼我們就需要寫一個攔截器,將token放到請求的header中。
首先在服務中增加feign組件:
增加注解 @EnableFeignClients :
注意上面的依賴和注解調用方和被調用方都要增加。然后在被調用方寫一個接口:
在調用方使用feign調用:
然后在調用方寫一個測試接口:
現在直接申請令牌,然后訪問調用方測試接口,會出現如下401錯誤:
下面在調用方增加一個攔截器,在header中增加令牌:
下面直接申請令牌,訪問調用方的測試接口,可以看到令牌中繼的結果:
看完上述內容,你們掌握SpringBootSecurity中什么是OAuth2.0令牌中繼的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!