使用Fign进行客户端远程调用和SpringFormEncoder的使用

1、引入依赖

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

2、启动类加上注解

@EnableFeignClients
@SpringBootApplication
public class FeignTestApplication {

	public static void main(String[] args) {
		SpringApplication.run(FeignTestApplication .class, args);
	}

}

3、新增接口暴露的接口

@FeignClient(value = "feign2",path="/feignService",configuration=MultipartSupportConfig.class)
public interface FeignTestService {

 @PostMapping(value = "/getUser", consumes = APPILICATION_JSON_UTF8_VALUE)
    List<UserInfor> getUserList(@Requesbody  UserInvo inVo);

//用于修改spring默认的encoder配置
    @Configuration
    class MultipartSupportConfig{
        @Bean
        public SpringFormEncoder feignFormEncoder(ObjectFactory<HttpMessageConverts> convert ){
            return new SpringFormEncoder(convert );
        }
}

先配置生成了SpringFormEncoder的bean对象,然后在@FeignClient注解中配置configuration值来修改默认Encoder。
这里使用的并不是spring标准的encoder配置, 

4、使用@AutoWired进行注入,调用

@AutoWired
private FeignTestService feignTestService;

@PostMapping("/getUsers")
@ApiOperation("查询用户列表")
public List<UserInfor> getUserList(UserInVo inVo){

return feignTestService.getUserList(inVo);
}

5.RequestMapping 中produces 和 consumes

consumes: 指定处理请求的提交内容类型(Content-Type),例如application/json, text/html;
produces: 指定返回的内容类型,仅当request请求头中的(Accept)类型中包含该指定类型才返回;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

莳光.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值