| 
					
				 | 
			
			
				@@ -0,0 +1,129 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+package org.jeecg.common.util;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.io.ByteArrayOutputStream;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.io.DataOutputStream;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.io.File;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.io.FileInputStream;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.io.InputStream;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.io.OutputStream;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.net.HttpURLConnection;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.net.URL;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.nio.charset.StandardCharsets;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.HashMap;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.Map;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.UUID;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.commons.codec.digest.DigestUtils;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.alibaba.fastjson.JSONObject;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+public class  HttpHelper {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 public static JSONObject httpFilePost(String uploadUrl,String token, File file) throws Exception {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 String LINEND = "\r\n";
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 String boundary = UUID.randomUUID().toString();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 FileInputStream fileInputStream = new FileInputStream(file);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     URL url = new URL(uploadUrl);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setDoInput(true);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setUseCaches(false);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setDoOutput(true);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setRequestMethod("POST");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setRequestProperty("connection", "keep-alive");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setRequestProperty("Charsert", "UTF-8");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setRequestProperty("Content-Type", "multipart/form-data; boundary=" + boundary);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setRequestProperty("token", token);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setRequestProperty("Accept","*/*");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     DataOutputStream outStream = new DataOutputStream(httpURLConnection.getOutputStream());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         StringBuilder stringBuilder = new StringBuilder();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         stringBuilder.append("--").append(boundary).append(LINEND);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         stringBuilder.append("Content-Disposition: form-data; name=\"file\"; filename=\"" + file.getName() + LINEND);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         stringBuilder.append("Content-Type: " + HttpURLConnection.guessContentTypeFromName(file.getName()) + LINEND);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         stringBuilder.append("Content-Transfer-Encoding: binary"+ LINEND);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         stringBuilder.append(LINEND);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         outStream.write(stringBuilder.toString().getBytes());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    	 InputStream is = new FileInputStream(file);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    	 byte[] buffer = new byte[1024];
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    	 int len = 0;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    	 while ((len = is.read(buffer)) != -1){
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    		 outStream.write(buffer, 0, len);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    	 }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    	 is.close();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    	 outStream.write(LINEND.getBytes());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    	 byte[] end_data = ("--" + boundary + "--" + LINEND).getBytes();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    	 outStream.write(end_data);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    	 outStream.flush();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         fileInputStream.close();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         JSONObject responseMsg = readStream(httpURLConnection.getInputStream());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         outStream.close();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         httpURLConnection.disconnect();    
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         return responseMsg;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 public static JSONObject httpPost(String uploadUrl,String token,JSONObject jsob) throws Exception {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 URL url = new URL(uploadUrl);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setDoInput(true);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setUseCaches(false);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setDoOutput(true);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setRequestMethod("POST");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setRequestProperty("Content-Type","application/json");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setRequestProperty("charset","UTF-8");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setRequestProperty("token", token);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         OutputStream os = httpURLConnection.getOutputStream();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         os.write(jsob.toString().getBytes());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         os.flush();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         os.close();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         JSONObject responseMsg = readStream(httpURLConnection.getInputStream());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      	 httpURLConnection.disconnect();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      	 return responseMsg;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 public static JSONObject httpTokenPost(String uploadUrl,String appkey,String cid,String secret) throws Exception {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 URL url = new URL(uploadUrl);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setDoInput(true);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setUseCaches(false);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setDoOutput(true);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setRequestMethod("POST");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setRequestProperty("Content-Type","application/json");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setRequestProperty("charset","UTF-8");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.setRequestProperty("appkey", appkey);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     long l = System.currentTimeMillis();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     Map<String, Object> map = new HashMap<String, Object>();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     map.put("role", 1);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 map.put("name", "dmy06");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     map.put("userId", "2108");//OA用户体系的用户id
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     map.put("cid", cid);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     String s1 = JSONObject.toJSONString(map);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     String s2 = s1 + "&time=" + l + "&secret="+secret;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     String newMd5 = DigestUtils.md5Hex(s2);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     String s4 = s1 + "&time=" + l + "&md5=" + newMd5;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     // 写入请求体
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     byte[] requestBodyBytes = s4.getBytes(StandardCharsets.UTF_8);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     OutputStream outputStream = httpURLConnection.getOutputStream();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     outputStream.write(requestBodyBytes);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     outputStream.flush();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     outputStream.close();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     JSONObject responseMsg = readStream(httpURLConnection.getInputStream());
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     httpURLConnection.disconnect();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     return responseMsg;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 private static JSONObject readStream(InputStream inputStream) throws Exception {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     byte[] buffer = new byte[1024];
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     int bytesRead;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     while ((bytesRead = inputStream.read(buffer)) != -1) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	    	 outputStream.write(buffer, 0, bytesRead);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     byte[] bytes = outputStream.toByteArray();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     String result = new String(bytes, "UTF-8");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     outputStream.close();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     return JSONObject.parseObject(result);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}
 
			 |