您的位置:首页 > 理论基础 > 计算机网络

【Http】httputils实现get/post请求

2015-10-26 16:35 543 查看
import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;

import java.io.IOException;
import java.io.InputStream;

/**
* Created on 2015/7/28.
*
* @author
* @version 1.0
*/
public abstract class HttpUtils {
private static CloseableHttpClient httpClient = HttpClients.createDefault();
private static ObjectMapper mapper = new ObjectMapper();

public static String get(String url) {
HttpGet httpGet = new HttpGet(url);
try (CloseableHttpResponse httpResponse = httpClient.execute(httpGet)) {
HttpEntity entity = httpResponse.getEntity();
InputStream inputStream = entity.getContent();
String result = IOUtils.toString(inputStream, "UTF-8");
inputStream.close();
return result;
} catch (IOException e) {
throw new RuntimeException(e);
}
}

public static <T> T get(String url, Class<T> clazz) {
String result = get(url);
if (StringUtils.isNotBlank(result)) {
try {
return mapper.readValue(result, clazz);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
return null;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: