| 
					
				 | 
			
			
				@@ -0,0 +1,170 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+package com.steerinfo.dil.util; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.alibaba.fastjson.JSONObject; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.HttpEntity; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.ParseException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.client.methods.CloseableHttpResponse; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.client.methods.HttpGet; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.client.methods.HttpPost; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.entity.StringEntity; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.impl.client.CloseableHttpClient; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.impl.client.HttpClients; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.message.BasicHeader; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.protocol.HTTP; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.util.EntityUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.io.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.net.HttpURLConnection; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.net.URL; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+public class HTTPRequestUtils { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 发送post请求 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param url  路径 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param json  参数(json类型) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param encoding 编码格式 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @throws ParseException 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @throws IOException 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static String send(String url, JSONObject json, String encoding) throws ParseException, IOException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String body = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //创建httpclient对象 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        CloseableHttpClient client = HttpClients.createDefault(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //创建post方式请求对象 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        HttpPost httpPost = new HttpPost(url); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //装填参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        StringEntity s = new StringEntity(json.toString(), "utf-8"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        s.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE,"application/json")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //设置参数到请求对象中 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        httpPost.setEntity(s); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        System.out.println("请求地址:" + url); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        System.out.println(json); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        System.out.println("请求参数:"+nvps.toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //设置header信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //指定报文头【Content-type】、【User-Agent】 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        httpPost.setHeader("Content-type", "application/x-www-form-urlencoded"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        httpPost.setHeader("Content-type", "application/json"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        httpPost.setHeader("-UserAgent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //执行请求操作,并拿到结果(同步阻塞) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        CloseableHttpResponse response = client.execute(httpPost); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        System.out.println(response); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //获取结果实体 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        HttpEntity entity = response.getEntity(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        System.out.println(entity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (entity != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            //按指定编码转换结果实体为String类型 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            body = EntityUtils.toString(entity, encoding); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        EntityUtils.consume(entity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //释放链接 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        response.close(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return body; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static String getJsonData(JSONObject jsonParam, String urls) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        StringBuffer sb=new StringBuffer(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 创建url资源 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            URL url = new URL(urls); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 建立http连接 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            HttpURLConnection conn = (HttpURLConnection) url.openConnection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 设置允许输出 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            conn.setDoOutput(true); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 设置允许输入 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            conn.setDoInput(true); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 设置不用缓存 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            conn.setUseCaches(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 设置传递方式 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            conn.setRequestMethod("POST"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 设置维持长连接 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            conn.setRequestProperty("Connection", "Keep-Alive"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 设置文件字符集: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            conn.setRequestProperty("Charset", "UTF-8"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 转换为字节数组 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            byte[] data = (jsonParam.toString()).getBytes(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 设置文件长度 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            conn.setRequestProperty("Content-Length", String.valueOf(data.length)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 设置文件类型: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            conn.setRequestProperty("contentType", "application/json"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 开始连接请求 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            conn.connect(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            OutputStream out = new DataOutputStream(conn.getOutputStream()) ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 写入请求的字符串 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            out.write((jsonParam.toString()).getBytes()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            out.flush(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            out.close(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            System.out.println(conn.getResponseCode()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 请求返回的状态 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (HttpURLConnection.HTTP_OK == conn.getResponseCode()){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                System.out.println("连接成功"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 请求返回的数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                InputStream in1 = conn.getInputStream(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    String readLine = new String(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    BufferedReader responseReader=new BufferedReader(new InputStreamReader(in1,"UTF-8")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    while((readLine=responseReader.readLine())!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        sb.append(readLine).append("\n"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    responseReader.close(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    System.out.println(sb.toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } catch (Exception e1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    e1.printStackTrace(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                System.out.println("error++"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } catch (Exception e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return sb.toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static String sendGet(String url, String encoding) throws ParseException, IOException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String body = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //创建httpclient对象 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        CloseableHttpClient client = HttpClients.createDefault(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //创建post方式请求对象 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        HttpGet httpGet = new HttpGet(url); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //装填参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //StringEntity s = new StringEntity(json.toString(), "utf-8"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //s.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE,"application/json")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //设置参数到请求对象中 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //httpGet.setEntity(s); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        System.out.println("请求地址:" + url); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //System.out.println(json); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        System.out.println("请求参数:"+nvps.toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //设置header信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //指定报文头【Content-type】、【User-Agent】 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        httpPost.setHeader("Content-type", "application/x-www-form-urlencoded"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        httpGet.setHeader("Content-type", "application/json"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        httpGet.setHeader("-UserAgent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //执行请求操作,并拿到结果(同步阻塞) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        CloseableHttpResponse response = client.execute(httpGet); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        System.out.println("响应:" + response); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //获取结果实体 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        HttpEntity entity = response.getEntity(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        System.out.println(entity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (entity != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            //按指定编码转换结果实体为String类型 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            body = EntityUtils.toString(entity, encoding); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        EntityUtils.consume(entity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //释放链接 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        response.close(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return body; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 |