From 8bb6004ed19b69fff5b0ca70303c616bc71546e6 Mon Sep 17 00:00:00 2001 From: czt <czt18638530771@163.com> Date: 星期一, 13 十月 2025 15:46:45 +0800 Subject: [PATCH] 武汉黄陂军粮-质检报告共享接口同步及推送2 --- src/main/java/com/fzzy/push/whhpjl/Whjl2023HttpClientUtil.java | 144 ++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 114 insertions(+), 30 deletions(-) diff --git a/src/main/java/com/fzzy/push/whhpjl/Whjl2023HttpClientUtil.java b/src/main/java/com/fzzy/push/whhpjl/Whjl2023HttpClientUtil.java index 404a853..3b14e06 100644 --- a/src/main/java/com/fzzy/push/whhpjl/Whjl2023HttpClientUtil.java +++ b/src/main/java/com/fzzy/push/whhpjl/Whjl2023HttpClientUtil.java @@ -6,9 +6,11 @@ import com.fzzy.push.whhpjl.dto.WhjlReqDto; import com.fzzy.push.whhpjl.dto.WhjlRespDto; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import org.springframework.web.client.RestTemplate; + +import java.io.*; +import java.net.HttpURLConnection; +import java.net.URL; /** * 姝︽眽鍐涚伯鐪佸钩鍙�-涓婁紶鏁版嵁鏈嶅姟绫� @@ -20,59 +22,141 @@ @Component public class Whjl2023HttpClientUtil { - @Autowired - private RestTemplate restTemplate; - - /** * 鏁版嵁涓婃姤post璇锋眰 + * * @param url * @param reqData * @return */ - public WhjlRespDto postPushData(String url, WhjlReqDto reqData) { + public WhjlRespDto postPushData(String url, WhjlReqDto reqData) throws Exception { log.info("---------鎺ュ彛璇锋眰鍦板潃锛�" + url + "----------鍙傛暟锛�" + JSON.toJSONString(reqData) + "---------"); + BufferedReader in = null; + URL urls = new URL(url); + HttpURLConnection connection = null; + OutputStream outputStream = null; String rs = ""; WhjlRespDto responseDto; - try { - rs = restTemplate.postForObject(url, reqData, String.class); + connection = (HttpURLConnection) urls.openConnection(); + connection.setRequestProperty("Content-Type", "application/json;charset=UTF-8"); + connection.setDoOutput(true); + connection.setDoInput(true); + connection.setRequestProperty("Accept-Language", "zh-CN,zh;q=0.8"); + connection.setRequestProperty("Accept", "*/*"); + connection.setRequestProperty("Range", "bytes=" + ""); + connection.setConnectTimeout(20000); + connection.setReadTimeout(30000); + connection.setRequestMethod("POST"); - } catch (Exception e) { - System.out.println("鍙戠敓寮傚父"); - log.error(e.getMessage(), e); - rs = null; - return new WhjlRespDto(99, e.getMessage()); + outputStream = connection.getOutputStream(); + + outputStream.write(JSON.toJSONString(reqData).getBytes("UTF-8")); + try { + connection.connect(); + if (connection.getResponseCode() == 200) { + in = new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8")); + String line = ""; + while ((line = in.readLine()) != null) { + rs += line; + } + }else{ + log.error("http鐘舵�侊細" + connection.getResponseCode()); + log.error("http娑堟伅锛�" + connection.getResponseMessage()); + } + + } catch (Exception e) { + System.out.println("鍙戠敓寮傚父"); + log.error(e.getMessage(), e); + rs = null; + return new WhjlRespDto(99, e.getMessage()); + } + log.info("---------鎺ュ彛杩斿洖锛�" + rs + "---------"); + responseDto = JSON.parseObject(rs, WhjlRespDto.class); + if (responseDto == null) return new WhjlRespDto(99, "鎺ュ彛璇锋眰鍙戠敓鏈煡閿欒"); + return responseDto; + } finally { + try { + outputStream.close(); + if (in != null) { + in.close(); + } + } catch (Exception e) { + } + outputStream = null; + if (connection != null) + connection.disconnect(); + connection = null; } - log.info("---------鎺ュ彛杩斿洖锛�" + rs + "---------"); - responseDto = JSON.parseObject(rs, WhjlRespDto.class); - if (responseDto == null) return new WhjlRespDto(99, "鎺ュ彛璇锋眰鍙戠敓鏈煡閿欒"); - return responseDto; } /** * 鏁版嵁涓婃姤post璇锋眰 + * * @param url * @param reqData * @return */ - public WhjlPullRespDto postPullData(String url, WhjlPullReqDto reqData) { + public WhjlPullRespDto postPullData(String url, WhjlPullReqDto reqData) throws Exception { log.info("---------鎺ュ彛璇锋眰鍦板潃锛�" + url + "----------鍙傛暟锛�" + JSON.toJSONString(reqData) + "---------"); + BufferedReader in = null; + URL urls = new URL(url); + HttpURLConnection connection = null; + OutputStream outputStream = null; String rs = ""; WhjlPullRespDto responseDto; - try { - rs = restTemplate.postForObject(url, reqData, String.class); + connection = (HttpURLConnection) urls.openConnection(); + connection.setRequestProperty("Content-Type", "application/json;charset=UTF-8"); + connection.setDoOutput(true); + connection.setDoInput(true); + connection.setRequestProperty("Accept-Language", "zh-CN,zh;q=0.8"); + connection.setRequestProperty("Accept", "*/*"); + connection.setRequestProperty("Range", "bytes=" + ""); + connection.setConnectTimeout(20000); + connection.setReadTimeout(30000); + connection.setRequestMethod("POST"); - } catch (Exception e) { - System.out.println("鍙戠敓寮傚父"); - log.error(e.getMessage(), e); - rs = null; - return new WhjlPullRespDto(99, null); + outputStream = connection.getOutputStream(); + + outputStream.write(JSON.toJSONString(reqData).getBytes("UTF-8")); + try { + connection.connect(); + if (connection.getResponseCode() == 200) { + in = new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8")); + String line = ""; + while ((line = in.readLine()) != null) { + rs += line; + } + } else { + log.error("http鐘舵�侊細" + connection.getResponseCode()); + log.error("http娑堟伅锛�" + connection.getResponseMessage()); + } + + } catch (Exception e) { + log.error(e.getMessage(), e); + rs = null; + return new WhjlPullRespDto(99, null); + } + log.info("---------鎺ュ彛杩斿洖锛�" + rs + "---------"); + responseDto = JSON.parseObject(rs, WhjlPullRespDto.class); + + if (responseDto == null) { + return new WhjlPullRespDto(99, "鎺ュ彛璇锋眰鍙戠敓鏈煡閿欒"); + } + return responseDto; + } finally { + try { + outputStream.close(); + if (in != null) { + in.close(); + } + } catch (Exception e) { + } + outputStream = null; + if (connection != null) + connection.disconnect(); + connection = null; } - log.info("---------鎺ュ彛杩斿洖锛�" + rs + "---------"); - responseDto = JSON.parseObject(rs, WhjlPullRespDto.class); - if (responseDto == null) return new WhjlPullRespDto(99, "鎺ュ彛璇锋眰鍙戠敓鏈煡閿欒"); - return responseDto; } } \ No newline at end of file -- Gitblit v1.9.3