SpringBoot+SpringCloud+Feign 调用第三方接口,或服务接口

SpringCloud 中文文档

Maven依赖

<dependency>
   <groupId>org.springframework.cloud</groupId>
   <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>

 

简单的一匹。如果你要调用的是第三方接口你可以这样写

//完整url=https://test.cn/user/auth?token=
//然后再自己控制器里面调用此接口就完成了
@FeignClient(name = "test", url = "https://test.cn")
public interface FeignService {

    @RequestMapping(method = RequestMethod.POST, value = "/user/auth",consumes = "application/x-www-form-urlencoded;charset=UTF-8")
    String ssoCheck(String token);
}

如果是调用自己Eureka上服务的接口,也简单的一匹

//服务名=serviceid,也就是你需要调用接口的服务名
//调用方
//然后你在你自己的控制器里面调用此接口。就完成了一次使用feign调用
@FeignClient(value="被调用方的服务名")
public interface UserAuthService {
    @RequestMapping(method = RequestMethod.GET, value = "/user/auth")
    String userAuth(@RequestParam(name="ticket") String ticket);
}


@RestController
public class UserAuthController {

    @Autowired
    UserAuthService userAuthService ;

    @GetMapping("/user/auth")
    public Result userAuth(String ticket){
        String rs = userAuthService.userAuth(ticket);
        return Result.ok(rs);
    }
}

当然不管调用第三方或者是Eureka上的api都得在启动类上加上@EnableFeignClients注解

《SpringBoot+SpringCloud+Feign 调用第三方接口,或服务接口》

    原文作者:独立行走的小黄
    原文地址: https://blog.csdn.net/weixin_42639445/article/details/89487774
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞