@FeignClient使用起来非常方便,只需要启用配置即可使用,但是有时候需要请求不通地址的服务,这时可以指定一个URI参数。
配置:
@EnableFeignClients(basePackages = "com.test.openapi.rpc")
@Configuration
public class FeignConfig extends Compact implements InitializingBean {
@Override
public void afterPropertiesSet() throws Exception {
}
}
@FeignClient接口
@FeignClient(
name = "testCloudService",
url = "https://api.test.com"
)
@RequestMapping(
value = "/api",
headers = {
"clientId=MY CLIENTID",
"version=1.0"
}
)
public interface ITestCloudService {
@RequestMapping(value = "/call", method = RequestMethod.GET)
ResultResp<Map<String, Object>> region(URI uri, @RequestHeader("token") String token);
@RequestMapping(value = "/test", method = RequestMethod.POST)
ResultResp<Map<String, Object>> login(URI uri, @RequestBody Map body, @RequestHeader("token") String token);
}
如果是GET方法,需要指定一连串参数,可以使用注解@SpringQueryMap,如:
@RequestMapping(value = "/user", method = RequestMethod.GET)
ResultResp<ApiUserDevice> userDevice(URI uri, @SpringQueryMap Map queryMap, @RequestHeader("token") String token);


近期评论