import com.google.gson.Gson; import okhttp3.*; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; /** * Created by dawn */ public class HttpHelper { private static Logger logger = LoggerFactory.getLogger(AnalysisHttpHelper.class); public static String httpGet(String url, Map<String, String> params) throws Exception { try { OkHttpClient client = new OkHttpClient(); List<String> ps = new ArrayList<>(); for (Map.Entry<String, String> entry : params.entrySet()) { ps.add(String.format("%s=%s", entry.getKey(), entry.getValue())); } Request req = new Request.Builder() .url(url +"?"+ String.join("&", ps)) .get() .build(); Response rep = client.newCall(req).execute(); if (rep.isSuccessful()) { ResponseBody repBody = rep.body(); if (repBody == null) { return ""; } else { return repBody.string(); } } throw new Exception(String.valueOf(rep.code())); } catch (Exception e) { logger.error(String.format("httpGet Error url(%s)params(%s)", url, new Gson().toJson(params)), e); throw e; } } public static String httpPost(String url, Map<String, String> params) throws Exception { try { OkHttpClient client = new OkHttpClient(); FormBody.Builder builder = new FormBody.Builder(); for (Map.Entry<String, String> entry : params.entrySet()) { builder.add(entry.getKey(), entry.getValue()); } RequestBody body = builder.build(); Request req = new Request.Builder() .url(url) .post(body) .build(); Response rep = client.newCall(req).execute(); if (rep.isSuccessful()) { ResponseBody repBody = rep.body(); if (repBody == null) { return ""; } else { return repBody.string(); } } throw new Exception(String.valueOf(rep.code())); } catch (Exception e) { logger.error(String.format("httpPost Error url(%s)params(%s)", url, new Gson().toJson(params)), e); throw e; } } }
http协议接口调用工具
最新推荐文章于 2024-08-14 15:38:15 发布