基于 HttpClients 的url访问
来源:互联网 发布:c语言预处理命令作用 编辑:程序博客网 时间:2024/05/05 23:56
package systems.basesys.helper;import java.util.ArrayList;import java.util.List;import java.util.Map;import org.apache.commons.lang.StringUtils;import org.apache.http.HttpEntity;import org.apache.http.NameValuePair;import org.apache.http.client.entity.UrlEncodedFormEntity;import org.apache.http.client.methods.CloseableHttpResponse;import org.apache.http.client.methods.HttpGet;import org.apache.http.client.methods.HttpPost;import org.apache.http.entity.StringEntity;import org.apache.http.impl.client.CloseableHttpClient;import org.apache.http.impl.client.HttpClients;import org.apache.http.message.BasicNameValuePair;import org.apache.http.util.EntityUtils;public class HttpUtils {/** * 执行一个HTTP POST请求,返回结果 * * @param paramMap * 请求字段 * @param url * 请求地址 * @return 返回json数据 * @throws Exception */public static String doPost(String url, Map<String, String> paramMap)throws Exception {if (StringUtils.isBlank(url)) {return null;}CloseableHttpClient httpclient = null;String json = null;try {httpclient = HttpClients.createDefault();HttpPost httpPost = new HttpPost(url);if (paramMap != null && paramMap.size() > 0) {List<NameValuePair> nvps = new ArrayList<NameValuePair>();for (String key : paramMap.keySet()) {nvps.add(new BasicNameValuePair(key, paramMap.get(key)));}httpPost.setEntity(new UrlEncodedFormEntity(nvps, "UTF-8"));}CloseableHttpResponse response2 = httpclient.execute(httpPost);HttpEntity entity2 = response2.getEntity();json = EntityUtils.toString(entity2, "UTF-8");response2.close();} finally {if (httpclient != null) {httpclient.close();}}return json;}/** * 执行一个HTTP POST请求,返回结果 * * @param paramMap * 请求字段 * @param url * 请求地址 * @return 返回json数据 * @throws Exception */public static String doPalmPost(String url, String param)throws Exception {if (StringUtils.isBlank(url)) {return null;}CloseableHttpClient httpclient = null;String json = null;try {httpclient = HttpClients.createDefault();HttpPost httpPost = new HttpPost(url);httpPost.setEntity(new StringEntity(param, "UTF-8"));CloseableHttpResponse response2 = httpclient.execute(httpPost);HttpEntity entity2 = response2.getEntity();json = EntityUtils.toString(entity2, "UTF-8");response2.close();} finally {if (httpclient != null) {httpclient.close();}}return json;}/** * 执行一个HTTP GET请求,返回结果 * * @param url * 请求的URL地址 * @param queryString * 请求的查询参数,可以为null */public static String doGet(String url) throws Exception {if(StringUtils.isBlank(url)){return null;}String json = null;CloseableHttpClient httpclient = null;try {httpclient = HttpClients.createDefault();HttpGet get = new HttpGet(url);CloseableHttpResponse response2 = httpclient.execute(get);HttpEntity entity2 = response2.getEntity();json = EntityUtils.toString(entity2, "UTF-8");response2.close();} finally {if (httpclient != null) {httpclient.close();}}return json;}public static void main(String[] args) {/*Map<String, String> paramMap = new HashMap<String, String>();paramMap.put("q", "美女");paramMap.put("start", "0");paramMap.put("rows", "10");paramMap.put("wt", "json");String json = "";try {System.out.println(doPost("http://101.251.204.197/solr_home/book/select", paramMap));json = doGet("http://101.251.204.197/solr_home/book/select?q=美女&start=0&rows=100&wt=json&indent=true");JSONObject obj = JSONObject.fromObject(json);JSONObject response = obj.getJSONObject("response");JSONArray keysArray = response.getJSONArray("docs");for (int i = 0; i < keysArray.size(); i++) {String bookString = keysArray.getString(i);obj = JSONObject.fromObject(bookString);//System.out.println(obj.get("book_name"));}System.out.println(URLDecoder.decode("%E7%BE%8E%E5%A5%B3", "UTF-8"));} catch (Exception e) {e.printStackTrace();}*/// System.out.println(json);}}
0 0
- 基于 HttpClients 的url访问
- java后台访问url连接——HttpClients
- httpclients的一些坑
- 基于HttpClient的HttpUtils(后台访问URL)
- 基于HttpClient的HttpUtils(后台访问URL)
- 基于HttpClient的HttpUtils(后台访问URL)
- 基于HttpClient的java后台访问URL
- 基于HttpClient的HttpUtils(后台访问URL)
- 基于HttpClient的HttpUtils(后台访问URL)
- springmvc中基于url的访问控制
- HttpClients
- URL的访问
- 基于spring的应用,主页可访问,无法访问URL对应的应用资源
- 基于HTTP访问特定URL的抓包程序该怎么写
- htmlunit.WebClient 和 client.HttpClients 的比对
- Fidder监听eclipse中HttpClients请求的解决方法
- 失效的URL访问限制
- 监听IE访问的URL
- 正则表达式中模式修正符作用详解(i、g、m、s、x、e)
- DEDECMSv57在PHP5.4不能正常运行的解决方法
- Servlet的两种配置方式
- dede后台栏目hover换背景颜色(58nin原创)
- 使用jquery获取父元素或父节点的方法
- 基于 HttpClients 的url访问
- php上传文件超时办法。把下面的4个值都调整大一些
- ini_set()函数的使用 以及 post_max_size,upload_max_filesize的修改方法
- 数据库查询今天、昨天、7天、近30天、本月、上一月 数据MySQL
- 选择排序算法
- 收到了来自服务器的重复标头 来自服务器的响应包含重复标头.此问题通常是由于网
- Jquery 操作iframe中元素
- 120. Triangle
- wap手机端页面根据dpr和宽度计算出font-size对应数值