脱离spring cloud使用feign

优雅的http接口调用-feign。
spring-cloud-feign是spring cloud微服务之间调用封装的功能,由于feign的封装和解耦做的比较好,因此脱离spring cloud也能使用。

Spring boot项目使用feign

项目背景:spring boot 2.2.5.RELEASE

引入Maven

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

启动注解

和spring cloud项目一样,同样需要在启动类上添加注解

@EnableFeignClients

Feign接口

接下来直接写feign的接口就行了,和产品spring cloud项目相比,这里的服务地址不再是服务名,而换成了具体的url

@FeignClient(url = "${ca.url}", name = "caClient")
public interface CaClient {

    @PostMapping(value = "ca", headers = "TOKEN=${ca.token}")
    Result<String> ca(@RequestBody CaDto dto);
    
}

测试验证

@Slf4j
@SpringBootTest(classes = CaApplication.class)
@RunWith(SpringRunner.class)
public class CaClientTest {
    @Autowired
    private CaClient  caClient;

    @Test
    public void testOpenApiPartner() {
        Result result = caClient.ca(CaDto
                .builder()
                .partnerId("123")
                .type("platform")
                .build());
        log.info(JsonUtils.beanToString(result));
        Assert.isTrue(result != null, "返回空");
        Assert.isTrue(result.isSuccess(), "返回false");
        Assert.isTrue(result.getCode() == 200, "返回错误");
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值