From 462bfe45f2bd766330db2aa9f4a5abbaa086853b Mon Sep 17 00:00:00 2001 From: CZT <czt18638530771@163.com> Date: 星期一, 23 十月 2023 19:51:37 +0800 Subject: [PATCH] 武汉省平台接口-调整接口封装 --- src/main/java/com/fzzy/push/whhpjl/Whjl2023HttpClientUtil.java | 174 ++++++++------------------------------------------------- 1 files changed, 25 insertions(+), 149 deletions(-) diff --git a/src/main/java/com/fzzy/push/whhpjl/Whjl2023HttpClientUtil.java b/src/main/java/com/fzzy/push/whhpjl/Whjl2023HttpClientUtil.java index 2345b9b..ab3f144 100644 --- a/src/main/java/com/fzzy/push/whhpjl/Whjl2023HttpClientUtil.java +++ b/src/main/java/com/fzzy/push/whhpjl/Whjl2023HttpClientUtil.java @@ -1,174 +1,50 @@ package com.fzzy.push.whhpjl; import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.TypeReference; -import com.fzzy.api.entity.ApiConfs; -import com.fzzy.api.utils.AESUtils; -import com.fzzy.api.utils.MyMD5Util; -import com.fzzy.api.utils.SnowflakeIdWorker; -import com.fzzy.push.gd2022.dto.GD2022AuthToken; +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 java.lang.reflect.Type; -import java.net.HttpURLConnection; -import java.net.URL; -import java.util.Map; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; +import org.springframework.web.client.RestTemplate; /** * 姝︽眽鍐涚伯鐪佸钩鍙�-涓婁紶鏁版嵁鏈嶅姟绫� + * * @author czt - * @date 2023/08/04 + * @date 2023/10/23 */ @Slf4j +@Component public class Whjl2023HttpClientUtil { - /** - * post formData - * @param url - * @param map - * @return - * @throws Exception - */ - @SuppressWarnings("resource") - public static WhjlRespDto postGetToken(String url, Map<String, Object> map) throws Exception { - log.info("---------鎺ュ彛璇锋眰鍦板潃锛�" +url+ "----------鍙傛暟锛�" + JSON.toJSONString(map) +"---------"); - BufferedReader in = null; - URL urls = new URL(url); - HttpURLConnection connection = null; - OutputStream outputStream = null; - String rs = ""; - WhjlRespDto 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"); - - StringBuffer buffer = new StringBuffer(); - outputStream = connection.getOutputStream(); - buffer.append(JSON.toJSONString(map)); - outputStream.write(buffer.toString().getBytes()); - 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 +"---------"); - - Type type = new TypeReference<WhjlRespDto<GD2022AuthToken>>() {}.getType(); - responseDto = JSON.parseObject(rs,type); - 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; - } - } + @Autowired + private RestTemplate restTemplate; /** - * post formData + * 鏁版嵁涓婃姤post璇锋眰 * @param url + * @param reqData * @return - * @throws Exception */ - @SuppressWarnings("resource") - public static WhjlRespDto postPushData(String url, String data , ApiConfs apiConfs, GD2022AuthToken authToken) throws Exception { - log.info("---------鎺ュ彛璇锋眰鍦板潃锛�" +url+ "----------鍙傛暟锛�" + data +"---------"); - BufferedReader in = null; - URL urls = new URL(url); - HttpURLConnection connection = null; - OutputStream outputStream = null; + public WhjlRespDto postPushData(String url, WhjlReqDto reqData) { + log.info("---------鎺ュ彛璇锋眰鍦板潃锛�" + url + "----------鍙傛暟锛�" + JSON.toJSONString(reqData) + "---------"); String rs = ""; WhjlRespDto responseDto; - try { - String md = AESUtils.encrypt(data,apiConfs.getPublicKey()); - log.info("---------鎺ュ彛璇锋眰鍦板潃锛�" +url+ "----------瀵嗘枃鍙傛暟锛�" + md +"---------"); - 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.setRequestProperty("Authorization", "Bearer " + authToken.getAccess_token() ); - connection.setRequestProperty("nonce", AESUtils.encrypt(authToken.getAccess_token() + System.currentTimeMillis(),apiConfs.getPublicKey())); - connection.setRequestProperty("requestId", AESUtils.encrypt(authToken.getAccess_token() + SnowflakeIdWorker.nextId(),apiConfs.getPublicKey())); - connection.setRequestProperty("digest", MyMD5Util.encrypt(data)); - connection.setConnectTimeout(20000); - connection.setReadTimeout(30000); - connection.setRequestMethod("POST"); - StringBuffer buffer = new StringBuffer(); - buffer.append(md); - outputStream = connection.getOutputStream(); - outputStream.write(buffer.toString().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; + try { + rs = restTemplate.postForObject(url, reqData, String.class); + + } 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; } } \ No newline at end of file -- Gitblit v1.9.3