Http请求工具类

Http请求工具类 HttpUtil.java

 

package com.example.demo.util;

import com.google.gson.*;
import java.io.*;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.util.Set;

public class HttpUtil {

    public static String post(String httpUrl, Object param) throws IOException {
        String paramStr = toUrlString(param);
        return post(httpUrl, param);
    }

    private static String post(String httpUrl, String param) throws IOException {
        HttpURLConnection connection = null;
        InputStream is = null;
        OutputStream os = null;
        BufferedReader br = null;
        String result = null;
        try {
            URL url = new URL(httpUrl);
            connection = (HttpURLConnection) url.openConnection();
            connection.setRequestMethod("POST");
            connection.setConnectTimeout(2000);
            connection.setReadTimeout(10000);
            connection.setDoOutput(true);
            connection.setDoInput(true);
            String ContentType = "application/x-www-form-urlencoded;charset=UTF-8";
            connection.setRequestProperty("Content-Type", ContentType);
            os = connection.getOutputStream();
            os.write(param.getBytes());
            if (connection.getResponseCode() == 200) {
                is = connection.getInputStream();
                br = new BufferedReader(new InputStreamReader(is, StandardCharsets.UTF_8));
                StringBuilder sbf = new StringBuilder();
                String temp = null;
                while ((temp = br.readLine()) != null) {
sbf.append(temp);
sbf.append("rn");
                }
                result = sbf.toString();
            }
        } finally {
            if (null != br) {
                try {
br.close();
                } catch (IOException e) {
e.printStackTrace();
                }
            }
            if (null != os) {
                try {
os.close();
                } catch (IOException e) {
e.printStackTrace();
                }
            }
            if (null != is) {
                try {
is.close();
                } catch (IOException e) {
e.printStackTrace();
                }
            }
            if (connection != null) {
                connection.disconnect();
            }
        }
        return result;
    }

    public static String toUrlString(Object object) throws UnsupportedEncodingException {
        Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").create();
        String json = gson.toJson(object);
        JsonElement jsonElement = JsonParser.parseString(json);
        JsonObject jsonObject = jsonElement.getAsJsonObject();
        Set<String> keys = jsonObject.keySet();
        StringBuilder sb = new StringBuilder();
        for (String key : keys) {
            String encode = URLEncoder.encode(jsonObject.get(key).getAsString(), "UTF-8");
            sb.append(key).append("=").append(encode).append("&");
        }
        return sb.toString();
    }

}

 

===========END===========

Http请求工具类

[db:回答]

以上是Http请求工具类的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>