當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
Spring Cloud Alibaba - 15 微服务之间使用Feign实现参数的透传
生活随笔
收集整理的這篇文章主要介紹了
Spring Cloud Alibaba - 15 微服务之间使用Feign实现参数的透传
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 業務場景
- 實現
- 自定義攔截器
- 暴漏接口
- 服務實現
- 服務調用者
- 驗證
- 源碼
業務場景
服務A 獲取到Token值后,要傳遞給 服務B進行校驗 。
在微服務架構下如何實現呢?
實現
自定義攔截器
artisan-feign-api 子模塊 增加 攔截器
import feign.RequestInterceptor; import feign.RequestTemplate; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes;import javax.servlet.http.HttpServletRequest;/*** @author 小工匠* @version 1.0* @description: TODO* @date 2022/2/4 0:52* @mark: show me the code , change the world*/public class ArtisanRequestInterceptor implements RequestInterceptor {@Overridepublic void apply(RequestTemplate requestTemplate) {ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();HttpServletRequest request = attributes.getRequest();requestTemplate.header("token", request.getHeader("token"));} }然后實例化
暴漏接口
因為是從header中獲取參數 ,所以
@RequestHeader("token") String token服務實現
服務提供者 artisan-cloud-feign-product
服務調用者
artisan-cloud-feign-order 寫個測試接口,測測吧
驗證
觀察下OORDER的日志
源碼
https://github.com/yangshangwei/SpringCloudAlibabMaster
總結
以上是生活随笔為你收集整理的Spring Cloud Alibaba - 15 微服务之间使用Feign实现参数的透传的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spring Cloud Alibaba
- 下一篇: Spring Cloud Alibaba