前文:如果在一個服務里面調用其他服務的接口,有大概以下幾種思路
1.在前台ajax直接請求接口的絕對路徑,通過請求參數和返回體完成請求,但是缺點如果請求的接口服務器地址或者域名更換,需要重新替換代碼,還可能造成跨域請求接口
2.使用springwork自帶的RestTemplate或者使用第三方請求工具完成請求,這種方法雖然不會跨域請求,但是請求方的接口地址變化同樣也需要改變
3.如果請求服務和被請求服務都注冊在Nacos server上使用Feign請求
一、導入依賴
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency>
二、開啟FeignClient與服務發現
同時啟動調用微服與被調用服務
被調用方Controller接口
三、創建client包,並添加需要調用的其他模塊的微服務的接口
@FeignClient注釋在調用者微服務,參數為serviceId,即spring.application.name微服務名稱
接口內部請求類型,參數及返回類型均與被調用微服保持一直就可以調用了。