- package com.shlugood.utils;
- import java.io.*;
- import java.net.HttpURLConnection;
- import java.net.URL;
- import java.net.URLEncoder;
- import java.util.HashMap;
- import java.util.Map;
- public class HttpUtil {
- private static String POST = "POST";
- private static String GET = "GET";
- private static String CONTENT_TYPE_URLENCODED = "application/x-www-form-urlencoded";
- private static String CONTENT_TYPE_JSON = "application/json";
- private static String httpRequest(String method, String contentType, String urlStr, HashMap<String,String> paras)
- throws IOException {
- URL url = new URL(urlStr);
- HttpURLConnection con = (HttpURLConnection) url.openConnection();
- con.setConnectTimeout(5000);
- con.setReadTimeout(5000);
- con.setRequestMethod("POST");
- con.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
- if(paras != null && !paras.isEmpty()){
- con.setDoOutput(true);
- DataOutputStream out = new DataOutputStream(con.getOutputStream());
- out.writeBytes(ParameterStringBuilder.getParamsString(paras));
- out.flush();
- out.close();
- }
- BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
- String inputLine;
- StringBuffer content = new StringBuffer();
- while ((inputLine = in.readLine()) != null) {
- content.append(inputLine);
- }
- in.close();
- con.disconnect();
- return content.toString();
- }
- private static class ParameterStringBuilder {
- public static String getParamsString(Map<String, String> params)
- throws UnsupportedEncodingException {
- StringBuilder result = new StringBuilder();
- for (Map.Entry<String, String> entry : params.entrySet()) {
- result.append(URLEncoder.encode(entry.getKey(), "UTF-8"));
- result.append("=");
- result.append(URLEncoder.encode(entry.getValue(), "UTF-8"));
- result.append("&");
- }
- String resultString = result.toString();
- return resultString.length() > 0
- ? resultString.substring(0, resultString.length() - 1)
- : resultString;
- }
- }
- public static String httpGetRequest(String url){
- try {
- return httpRequest(GET, CONTENT_TYPE_URLENCODED, url, null);
- } catch (IOException e) {
- e.printStackTrace();
- }
- return "";
- }
- public static String httpPostRequest(String url, HashMap<String,String> paras){
- try {
- return httpRequest(POST, CONTENT_TYPE_URLENCODED, url, paras);
- } catch (IOException e) {
- e.printStackTrace();
- }
- return "";
- }
- }
来源: https://www.cnblogs.com/caoshenglu/p/8476593.html