import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLConnection;
import java.security.MessageDigest;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Map;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.ParseException;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.methods.CloseableHttpResponse;
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.util.EntityUtils;
import net.sf.json.JSONObject;
public class TOOL {
public static void main(String avg[]) {
System.out.println(
"///\r\n" +
"____ ___.__ ________ \r\n" +
"\\ \\/ /|__|_____ ____ \\______ \\ _____ \r\n" +
" \\ / | |\\__ \\ / \\ | | \\ \\__ \\ \r\n" +
" / \\ | | / __ \\_| | \\ | ` \\ / __ \\_\r\n" +
"/___/\\ \\|__|(____ /|___| //_______ /(____ /\r\n" +
" \\_/ \\/ \\/ \\/ \\/ \r\n" +
"\r\n" +
"//");
}
public static JSONObject sendGet(String urlNameString) {
String result = "";
BufferedReader in = null;
try {
URL realUrl = new URL(urlNameString);
URLConnection connection = realUrl.openConnection();
connection.setRequestProperty("accept", "*/*");
connection.setRequestProperty("connection", "Keep-Alive");
connection.setRequestProperty("user-agent",
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
connection.setRequestProperty("Accept-Charset", "utf-8");
connection.setRequestProperty("contentType", "utf-8");
connection.connect();
// 获取所有响应头字段
Map<String, List<String>> map = connection.getHeaderFields();
// 遍历所有的响应头字段
for (String key : map.keySet()) {
// System.out.println(key + "--->" + map.get(key));
}
// 定义 BufferedReader输入流来读取URL的响应
in = new BufferedReader(new InputStreamReader(
connection.getInputStream(),"utf-8"));
String line;
while ((line = in.readLine()) != null) {
result += line;
}
} catch (Exception e) {
System.out.println("发送GET请求出现异常!" + e);
e.printStackTrace();
}
// 使用finally块来关闭输入流
finally {
try {
if (in != null) {
in.close();
}
} catch (Exception e2) {
e2.printStackTrace();
}
}
System.out.println("GET请求参数:"+urlNameString);
System.out.println("GET请求结果:"+result);
return JSONObject.fromObject(result);
}
public static JSONObject sendPost(String url, JSONObject param) {
PrintWriter out = null;
BufferedReader in = null;
String result = "";
try {
URL realUrl = new URL(url);
URLConnection conn = realUrl.openConnection();
conn.setRequestProperty("Content-Type", "aapplication/json");
conn.setRequestProperty("charset", "UTF-8");
conn.setRequestProperty("Accept", "application/json, text/javascript, */*");
conn.setRequestProperty("q", "0.01");
conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
conn.setDoOutput(true);
conn.setDoInput(true);
out = new PrintWriter(new OutputStreamWriter(conn.getOutputStream(), "utf-8"));
out.print(param.toString());
out.flush();
in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "utf-8"));
String line;
while ((line = in.readLine()) != null) {
result += line;
}
} catch (Exception e) {
System.out.println("发送 POST 请求出现异常!" + e);
e.printStackTrace();
}
finally {
try {
if (out != null) {
out.close();
}
if (in != null) {
in.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
System.out.println("POST请求链接:"+url);
System.out.println("POST请求参数:"+param);
System.out.println("POST请求结果:"+result);
if(isJsonObject(result)) {
return JSONObject.fromObject(result);
}else {
return JSONObject.fromObject("{\"errcode\":\"500\",\"msg\":\"请求返回非JSON,返回结果:"+result+"\"}");
}
}
public static boolean isJsonObject(String content) {
if(content.trim()==""||content.trim().length()<=0){
return false;
}
try {
JSONObject jsonStr = JSONObject.fromObject(content);
return true;
} catch (Exception e) {
return false;
}
}
}