From 6bef82df447efb08d05ad3d0c45585ef9b0acdb7 Mon Sep 17 00:00:00 2001 From: eight <641137800@qq.com> Date: 星期五, 01 十一月 2024 16:48:35 +0800 Subject: [PATCH] 支持 feign 处理 content-type [text/plain] 返回内容 --- jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/config/MyJackson2HttpMessageConverter.java | 16 ++++++++++++++++ jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/feign/RemoteDataService.java | 2 +- jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/config/MyOpenFeignConfig.java | 21 +++++++++++++++++++++ 3 files changed, 38 insertions(+), 1 deletions(-) diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/config/MyJackson2HttpMessageConverter.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/config/MyJackson2HttpMessageConverter.java new file mode 100644 index 0000000..d3240ed --- /dev/null +++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/config/MyJackson2HttpMessageConverter.java @@ -0,0 +1,16 @@ +package cn.lihu.jh.module.ecg.config; + +import org.springframework.http.MediaType; +import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; + +import java.util.ArrayList; +import java.util.List; + +public class MyJackson2HttpMessageConverter extends MappingJackson2HttpMessageConverter { + public MyJackson2HttpMessageConverter() { + List<MediaType> mediaTypes = new ArrayList<>(); + mediaTypes.add(MediaType.TEXT_PLAIN); + mediaTypes.add(MediaType.TEXT_HTML); + setSupportedMediaTypes(mediaTypes); + } +} diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/config/MyOpenFeignConfig.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/config/MyOpenFeignConfig.java new file mode 100644 index 0000000..8c85ccc --- /dev/null +++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/config/MyOpenFeignConfig.java @@ -0,0 +1,21 @@ +package cn.lihu.jh.module.ecg.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import feign.codec.Decoder; +import org.springframework.beans.factory.ObjectFactory; +import org.springframework.boot.autoconfigure.http.HttpMessageConverters; +import org.springframework.cloud.openfeign.support.SpringDecoder; + + +@Configuration +public class MyOpenFeignConfig { + + @Bean + public Decoder feignDecoder() { + MyJackson2HttpMessageConverter converter = new MyJackson2HttpMessageConverter(); + ObjectFactory<HttpMessageConverters> objectFactory = () -> new HttpMessageConverters(converter); + return new SpringDecoder(objectFactory); + } +} diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/feign/RemoteDataService.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/feign/RemoteDataService.java index f7bb907..2fa84dd 100644 --- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/feign/RemoteDataService.java +++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/feign/RemoteDataService.java @@ -7,7 +7,7 @@ @FeignClient(name = "remote-data-service", url = "${openfeign.server}") public interface RemoteDataService { - @PostMapping(value="/hai/HttpEntry/", produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE) + @PostMapping(value="/hai/HttpEntry/", produces = MediaType.APPLICATION_JSON_VALUE/*, consumes = MediaType.APPLICATION_JSON_VALUE*/) public RestApiResult<AppointmentExternal> httpApi( @RequestParam("service") String service, @RequestParam("urid") String urid, @RequestParam("pwd") String pwd, -- Gitblit v1.9.3