HttpCallUtil

xiaoxiao2021-02-28  104

public class HttpCallUtil { private static final Logger LOGGER = LoggerFactory .getLogger(HttpCallUtil.class); public static final String KEY_TOKEN_ID = "TOKEN_ID"; public static JSONObject sendDesPost(String targetUrl, Map<String, Object> param) { try { String paramStr = null; if (param != null) { paramStr = JSONObject.toJSONString(param); paramStr = Des3.encode(paramStr); } HttpRequest request = new HttpRequest(HttpResultType.STRING); request.setMethod("POST"); request.setUrl(targetUrl); request.setParameters(new NameValuePair[] { new NameValuePair( "msg", paramStr) }); request.setTimeout(60000); long startTime = System.currentTimeMillis(); LOGGER.info("Start Post Call: " + targetUrl + " with param: " + paramStr); HttpProtocolHandler httpProtocolHandler = HttpProtocolHandler .getInstance(); HttpResponse response = httpProtocolHandler.execute(request); long endTime = System.currentTimeMillis(); long executeTime = endTime - startTime; if (response != null) { LOGGER.info("End Post Call: " + targetUrl + " with resultCode: " + response.getStatusCode() + ", excuteTime :" + executeTime); } else { LOGGER.info("End Post Call: response is null ! excuteTime :" + executeTime); return null; } if (response.getStatusCode() == 200) { String resultStr = response.getStringResult(); if (!(StringUtils.isEmpty(resultStr))) { resultStr = Des3.decode(resultStr); JSONObject resultObj = JSONObject.parseObject(resultStr); return resultObj; } } JSONObject resultObj = new JSONObject(); resultObj.put("code", Integer.valueOf(response.getStatusCode())); resultObj.put("msg", response.getStringResult()); resultObj.put("status", "Response Failed"); } catch (Exception e) { LOGGER.error("http call process error", e); } return null; } public static JSONObject jsonDesPost(String targetUrl, JSONObject param) { try { String paramStr = null; if (param != null) { paramStr = JSONObject.toJSONString(param); paramStr = Des3.encode(paramStr); } HttpRequest request = new HttpRequest(HttpResultType.STRING); request.setMethod("POST"); request.setUrl(targetUrl); request.setParameters(new NameValuePair[] { new NameValuePair( "msg", paramStr) }); request.setTimeout(60000); long startTime = System.currentTimeMillis(); LOGGER.info("Start Post Call: " + targetUrl + " with param: " + paramStr); HttpProtocolHandler httpProtocolHandler = HttpProtocolHandler .getInstance(); HttpResponse response = httpProtocolHandler.execute(request); long endTime = System.currentTimeMillis(); long executeTime = endTime - startTime; if (response != null) { LOGGER.info("End Post Call: " + targetUrl + " with resultCode: " + response.getStatusCode() + ", excuteTime :" + executeTime); } else { LOGGER.info("End Post Call: response is null ! excuteTime :" + executeTime); return null; } if (response.getStatusCode() == 200) { String resultStr = response.getStringResult(); if (!(StringUtils.isEmpty(resultStr))) { resultStr = Des3.decode(resultStr); JSONObject resultObj = JSONObject.parseObject(resultStr); return resultObj; } } JSONObject resultObj = new JSONObject(); resultObj.put("code", Integer.valueOf(response.getStatusCode())); resultObj.put("msg", response.getStringResult()); resultObj.put("status", "Response Failed"); } catch (Exception e) { LOGGER.error("http call process error", e); } return null; } public static JSONObject sendPost(String targetUrl, Map<String, Object> param) { try { HttpRequest request = new HttpRequest(HttpResultType.STRING); request.setMethod("POST"); request.setUrl(targetUrl); if (param != null) { List nvList = new ArrayList(); for (String str : param.keySet()) { if (param.get(str) != null) { nvList.add(new NameValuePair(str, String.valueOf(param .get(str)))); } } if (nvList.size() > 0) { request.setParameters((NameValuePair[]) nvList .toArray(new NameValuePair[nvList.size()])); } } long startTime = System.currentTimeMillis(); LOGGER.info("Start Post Call: " + targetUrl + " with param: " + JSONObject.toJSONString(param)); HttpProtocolHandler httpProtocolHandler = HttpProtocolHandler .getInstance(); HttpResponse response = httpProtocolHandler.execute(request); long endTime = System.currentTimeMillis(); long executeTime = endTime - startTime; if (response != null) { LOGGER.info("End Post Call: " + targetUrl + " with resultCode: " + response.getStatusCode() + ", excuteTime :" + executeTime); } else { LOGGER.info("End Post Call: response is null ! excuteTime :" + executeTime); return null; } if (response.getStatusCode() != 200) break label335; String resultStr = response.getStringResult(); if (StringUtils.isEmpty(resultStr)) break label335; JSONObject resultObj = JSONObject.parseObject(resultStr); return resultObj; } catch (Exception e) { LOGGER.error("http call process error", e); } label335: return null; } public static JSONObject sendGet(String targetUrl, Map<String, Object> param) { try { HttpRequest request = new HttpRequest(HttpResultType.STRING); request.setMethod("GET"); request.setUrl(targetUrl); if (param != null) { int size = param.keySet().size(); NameValuePair[] nvArray = new NameValuePair[size]; int i = 0; for (String str : param.keySet()) { nvArray[i] = new NameValuePair(str, String.valueOf(param .get(str))); ++i; } request.setParameters(nvArray); } long startTime = System.currentTimeMillis(); LOGGER.info("Start Post Call: " + targetUrl + " with param: " + JSONObject.toJSONString(param)); HttpProtocolHandler httpProtocolHandler = HttpProtocolHandler .getInstance(); HttpResponse response = httpProtocolHandler.execute(request); long endTime = System.currentTimeMillis(); long executeTime = endTime - startTime; if (response != null) { LOGGER.info("End Post Call: " + targetUrl + " with resultCode: " + response.getStatusCode() + ", excuteTime :" + executeTime); } else { LOGGER.info("End Post Call: response is null ! excuteTime :" + executeTime); return null; } if (response.getStatusCode() != 200) break label314; String resultStr = response.getStringResult(); if (StringUtils.isEmpty(resultStr)) break label314; JSONObject resultObj = JSONObject.parseObject(resultStr); return resultObj; } catch (Exception e) { LOGGER.error("http call process error", e); } label314: return null; } public static JSONObject jsonPost(String targetUrl, JSONObject param) { try { HttpRequest request = new HttpRequest(HttpResultType.STRING); request.setMethod("POST"); request.setUrl(targetUrl); request.setTimeout(60000); if (param != null) { List nvList = new ArrayList(); for (String str : param.keySet()) { if (param.get(str) != null) { nvList.add(new NameValuePair(str, String.valueOf(param .get(str)))); } } if (nvList.size() > 0) { request.setParameters((NameValuePair[]) nvList .toArray(new NameValuePair[nvList.size()])); } } long startTime = System.currentTimeMillis(); LOGGER.info("Start Post Call: " + targetUrl + " with param: " + JSONObject.toJSONString(param)); HttpProtocolHandler httpProtocolHandler = HttpProtocolHandler .getInstance(); HttpResponse response = httpProtocolHandler.execute(request); long endTime = System.currentTimeMillis(); long executeTime = endTime - startTime; if (response != null) { LOGGER.info("End Post Call: " + targetUrl + " with resultCode: " + response.getStatusCode() + ", excuteTime :" + executeTime); } else { LOGGER.info("End Post Call: response is null ! excuteTime :" + executeTime); return null; } if (response.getStatusCode() != 200) break label335; String resultStr = response.getStringResult(); if (StringUtils.isEmpty(resultStr)) break label335; JSONObject resultObj = JSONObject.parseObject(resultStr); return resultObj; } catch (Exception e) { LOGGER.error("http call process error", e); } label335: return null; } public static JSONObject jsonSSLPost(String targetUrl, JSONObject param) { try { HttpRequest request = new HttpRequest(HttpResultType.STRING); request.setMethod("POST"); request.setUrl(targetUrl); request.setTimeout(60000); if (param != null) { List nvList = new ArrayList(); for (String str : param.keySet()) { if (param.get(str) != null) { nvList.add(new NameValuePair(str, String.valueOf(param .get(str)))); } } if (nvList.size() > 0) { request.setParameters((NameValuePair[]) nvList .toArray(new NameValuePair[nvList.size()])); } } long startTime = System.currentTimeMillis(); LOGGER.info("Start Post Call: " + targetUrl + " with param: " + JSONObject.toJSONString(param)); HttpProtocolHandler httpProtocolHandler = HttpProtocolHandler .getInstance(); HttpResponse response = httpProtocolHandler.sslexecute(request); long endTime = System.currentTimeMillis(); long executeTime = endTime - startTime; if (response != null) { LOGGER.info("End Post Call: " + targetUrl + " with resultCode: " + response.getStatusCode() + ", excuteTime :" + executeTime); } else { LOGGER.info("End Post Call: response is null ! excuteTime :" + executeTime); return null; } if (response.getStatusCode() != 200) break label335; String resultStr = response.getStringResult(); if (StringUtils.isEmpty(resultStr)) break label335; JSONObject resultObj = JSONObject.parseObject(resultStr); return resultObj; } catch (Exception e) { LOGGER.error("http call process error", e); } label335: return null; } public static String generateToken() { return UUID.randomUUID().toString().replaceAll("-", ""); }

}

import java.security.Key; import javax.crypto.Cipher; import javax.crypto.SecretKeyFactory; import javax.crypto.spec.DESedeKeySpec; import javax.crypto.spec.IvParameterSpec; public class Des3 { private static final String SECRET_KEY = "com@XFFQDKLMSAPPXX@@#$"; private static final String IV = "01234567"; private static final String ENCODING = "utf-8"; public static String encode(String plainText) throws Exception { Key deskey = null; DESedeKeySpec spec = new DESedeKeySpec( "com@XFFQDKLMSAPPXX@@#$".getBytes("utf-8")); SecretKeyFactory keyfactory = SecretKeyFactory.getInstance("desede"); deskey = keyfactory.generateSecret(spec); Cipher cipher = Cipher.getInstance("desede/CBC/PKCS5Padding"); IvParameterSpec ips = new IvParameterSpec("01234567".getBytes("utf-8")); cipher.init(1, deskey, ips); byte[] encryptData = cipher.doFinal(plainText.getBytes("utf-8")); return Base64.encode(encryptData); } public static String decode(String encryptText) throws Exception { Key deskey = null; DESedeKeySpec spec = new DESedeKeySpec( "com@XFFQDKLMSAPPXX@@#$".getBytes("utf-8")); SecretKeyFactory keyfactory = SecretKeyFactory.getInstance("desede"); deskey = keyfactory.generateSecret(spec); Cipher cipher = Cipher.getInstance("desede/CBC/PKCS5Padding"); IvParameterSpec ips = new IvParameterSpec("01234567".getBytes("utf-8")); cipher.init(2, deskey, ips); byte[] decryptData = cipher.doFinal(Base64.decode(encryptText)); return new String(decryptData, "utf-8"); } }

转载请注明原文地址: https://www.6miu.com/read-28080.html

最新回复(0)