- A+
首先说明一下情况,Server服务是原来就有的,Server_1之前调用Server的时候使用是form-data形式,这就导致了Server支持的就是form-data格式,导致了Server_2使用json格式调用的时候就调不通,拿不到数据。此时需要做数据的转换。
1.添加一个转换类
public class FeignSimpleEncoderConfig {
@Bean
public Encoder encoder(){
return new FormEncoder();
}
}
2.在需要调用的地方使用配置。注意不可使用map数据,否则会报错。
@Component
@FeignClient(value = "Server", fallback = xxx.class, configuration = FeignSimpleEncoderConfig.class)
3.在需要转换的数据中,设置格式
其中MediaType.APPLICATION_FORM_URLENCODED_VALUE = "application/x-www-form-urlencoded"
@RequestMapping(value = "/a/b", method = RequestMethod.POST,
consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
JSONObject queryPageListPlusMis(BasicInfoQueryForm form);
4.此时调用即可,会发现数据完成转换。Server端可以拿到json转换后的数据