由于公司做电商很多平台都要求自己写http请求,因此写一下自己的感悟,希望可以帮助到有需要的人,token为授权信息,每个平台要求不同,map种存放请求参数,key为参数名,value为参数值
public static String sendPatch(String url, Map<String, Object> params, String token) {
String result = "";
CloseableHttpClient httpClient = HttpClients.createDefault();
HttpPatch httpPatch = new HttpPatch(url);
httpPatch.setHeader("Content-type", "application/json");
httpPatch.setHeader("Charset", HTTP.UTF_8);
httpPatch.setHeader("Accept", "application/json");
httpPatch.setHeader("Accept-Charset", HTTP.UTF_8);
httpPatch.setHeader("Authorization", "Bearer " + token);
try {
StringEntity data = new StringEntity(JSONObject.fromObject(params).toString(), HTTP.UTF_8);
httpPatch.setEntity(data);
HttpResponse response = httpClient.execute(httpPatch);
HttpEntity entity = response.getEntity();
int code = response.getStatusLine().getStatusCode();
result = EntityUtils.toString(entity);
} catch (Exception e) {
result = "{\"status\":\"1\",\"error\":\"" + e.getMessage() + "\"}";
}
return result;
}
public static String sendDelete(String url, Map<String, Object> param, String token) {
String result = "";
CloseableHttpClient httpClient = null;
try {
httpClient = getHttpClient(url);
HttpDelete httpDelete = new HttpDelete(url);
setRequestConfig(httpDe