123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128 |
- /**
- *
- * Copyright (c) behosoft Co.,Ltd.
- * All Rights Reserved.
- *
- * This software is the confidential and proprietary information of behosoft.
- * (Social Security Department). You shall not disclose such
- * Confidential Information and shall use it only in accordance with
- * the terms of the license agreement you entered into with behosoft.
- *
- * Distributable under GNU LGPL license by gnu.org
- */
- package com.behosoft.util;
- import java.io.BufferedReader;
- import java.io.ByteArrayInputStream;
- import java.io.InputStream;
- import java.io.InputStreamReader;
- import java.io.PrintWriter;
- import java.net.HttpURLConnection;
- import java.net.URL;
- import java.net.URLConnection;
- import java.net.URLEncoder;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- import net.sf.json.JSONObject;
- import org.apache.commons.httpclient.HttpClient;
- import org.apache.commons.httpclient.methods.PostMethod;
- import org.apache.log4j.Logger;
- import com.behosoft.framework.web.dto.HttpRequest;
- /**
- *
- * <p>
- * Title: 百弘电商物流标准版_[]_[模块名]
- * </p>
- * <p>
- * Description: [描述该类概要功能介绍]
- * </p>
- * @author jiangyonghua
- * @version 1.0 2019-1-31
- * @author (lastest modification by )
- * @since 1.0
- */
- public class HttpUtils {
- private static Logger logger = Logger.getLogger(HttpUtils.class);
- public static Map<String, String> httpPost(Map<String, Object> params){
- Map<String, String> result = new HashMap<String, String>();
- try
- {
- String url = params.get("url").toString();
- String requestData = params.get("requestData").toString();
-
- logger.info("url: " + url + ",requestData: " + requestData);
-
- HttpClient httpClient = new HttpClient();
- PostMethod postMethod = new PostMethod(url);
- byte[] postdata = requestData.getBytes("UTF-8");
- postMethod.setRequestHeader("Content-Type", "application/json");
- ByteArrayInputStream bis = new ByteArrayInputStream(postdata);
- postMethod.setRequestBody(bis);
- postMethod.setRequestContentLength(postdata.length);
-
- int statusCode = httpClient.executeMethod(postMethod);
- String responseStr = postMethod.getResponseBodyAsString();
- result.put("response", responseStr);
-
- logger.info("statusCode: " + statusCode + ",responseStr: " + responseStr);
- }
- catch (Exception e)
- {
- logger.error("服务器异常:" + e.getMessage());
- }
- return result;
- }
-
- public static Map<String, String> httpGet(Map<String, Object> params){
- Map<String, String> result = new HashMap<String, String>();
- try
- {
- String path = params.get("path").toString();
- String carrierTrackingNumber = params.get("carrierTrackingNumber").toString();
- String status = params.get("status").toString();
-
- logger.info("request: " + path + "?carrierTrackingNumber=" + carrierTrackingNumber + "&status=" + status);
-
- String urlNameString = path + "?carrierTrackingNumber=" + carrierTrackingNumber + "&status=" + URLEncoder.encode(status, "UTF-8");
-
- URL url = new URL(urlNameString);
-
- HttpURLConnection conn = (HttpURLConnection) url.openConnection();
- conn.setRequestProperty("accept", "*/*");
- conn.setRequestProperty("connection", "Keep-Alive");
- conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");
- conn.setDoOutput(true);
- conn.setDoInput(true);
- conn.setRequestMethod("GET");
-
- conn.connect();
-
- //获取URLConnection对象对应的输入流
- InputStream is = conn.getInputStream();
- //构造一个字符流缓存
- BufferedReader br = new BufferedReader(new InputStreamReader(is));
- String str = "";
- StringBuffer sb = new StringBuffer();
- while ((str = br.readLine()) != null) {
- str = new String(str.getBytes(),"UTF-8");
- sb.append(str);
- }
- is.close();
- conn.disconnect();
- result.put("response", sb.toString());
- logger.info("response: " + sb.toString());
- }
- catch (Exception e)
- {
- logger.error("服务器异常:" + e.getMessage());
- }
- return result;
- }
-
- public static void main(String[] args) {
- System.out.println("");
- }
- }
|