|  |  |  | 
|---|
|  |  |  | package com.fzzy.push.whhpjl; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.alibaba.fastjson.JSON; | 
|---|
|  |  |  | import com.fzzy.api.entity.ApiConfs; | 
|---|
|  |  |  | import com.fzzy.push.whhpjl.dto.WhjlPullReqDto; | 
|---|
|  |  |  | import com.fzzy.push.whhpjl.dto.WhjlPullRespDto; | 
|---|
|  |  |  | import com.fzzy.push.whhpjl.dto.WhjlReqDto; | 
|---|
|  |  |  | import com.fzzy.push.whhpjl.dto.WhjlRespDto; | 
|---|
|  |  |  | import lombok.extern.slf4j.Slf4j; | 
|---|
|  |  |  | import java.io.BufferedReader; | 
|---|
|  |  |  | import java.io.InputStreamReader; | 
|---|
|  |  |  | import java.io.OutputStream; | 
|---|
|  |  |  | import org.springframework.stereotype.Component; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.io.*; | 
|---|
|  |  |  | import java.net.HttpURLConnection; | 
|---|
|  |  |  | import java.net.URL; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 武汉军粮省平台-上传数据服务类 | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @author czt | 
|---|
|  |  |  | * @date 2023/08/04 | 
|---|
|  |  |  | * @date 2023/10/23 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Slf4j | 
|---|
|  |  |  | @Component | 
|---|
|  |  |  | public class Whjl2023HttpClientUtil { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * post formData | 
|---|
|  |  |  | * 数据上报post请求 | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @param url | 
|---|
|  |  |  | * @param reqData | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | * @throws Exception | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @SuppressWarnings("resource") | 
|---|
|  |  |  | public static WhjlRespDto postPushData(String url, WhjlReqDto reqData , ApiConfs apiConfs) throws Exception { | 
|---|
|  |  |  | log.info("---------接口请求地址:" +url+ "----------参数:" + reqData.toString() +"---------"); | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  | 
|---|
|  |  |  | String rs = ""; | 
|---|
|  |  |  | WhjlRespDto responseDto; | 
|---|
|  |  |  | try { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | connection = (HttpURLConnection) urls.openConnection(); | 
|---|
|  |  |  | connection.setRequestProperty("Content-Type", "application/json;charset=UTF-8"); | 
|---|
|  |  |  | connection.setDoOutput(true); | 
|---|
|  |  |  | 
|---|
|  |  |  | connection.setRequestMethod("POST"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | outputStream = connection.getOutputStream(); | 
|---|
|  |  |  | outputStream.write(reqData.toString().getBytes("UTF-8")); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | outputStream.write(JSON.toJSONString(reqData).getBytes("UTF-8")); | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | connection.connect(); | 
|---|
|  |  |  | if (connection.getResponseCode() == 200) { | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | System.out.println("发生异常"); | 
|---|
|  |  |  | log.error(e.getMessage(),e); | 
|---|
|  |  |  | log.error(e.getMessage(), e); | 
|---|
|  |  |  | rs = null; | 
|---|
|  |  |  | return new WhjlRespDto(99,e.getMessage()); | 
|---|
|  |  |  | return new WhjlRespDto(99, e.getMessage()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | log.info("---------接口返回:" + rs +"---------"); | 
|---|
|  |  |  | responseDto = JSON.parseObject(rs,WhjlRespDto.class); | 
|---|
|  |  |  | if(responseDto == null )   return new WhjlRespDto(99,"接口请求发生未知错误"); | 
|---|
|  |  |  | 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){ | 
|---|
|  |  |  | if (in != null) { | 
|---|
|  |  |  | in.close(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | } | 
|---|
|  |  |  | outputStream = null; | 
|---|
|  |  |  | if (connection != null) | 
|---|
|  |  |  | connection.disconnect(); | 
|---|
|  |  |  | connection = null; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 数据上报post请求 | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @param url | 
|---|
|  |  |  | * @param reqData | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | 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 { | 
|---|
|  |  |  | 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"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 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) { | 
|---|