zoukankan      html  css  js  c++  java
  • Java学习之HttpClient的GET与POST请求

    这篇随笔记录了HttpClient的GET和POST请求

    使用maven构建依赖包,我使用的版本是4.5.3

    <dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.5.3</version>
    </dependency> 

    代码如下:

     1 import org.apache.http.HttpEntity;
     2 import org.apache.http.HttpResponse;
     3 import org.apache.http.NameValuePair;
     4 import org.apache.http.client.entity.UrlEncodedFormEntity;
     5 import org.apache.http.client.methods.HttpGet;
     6 import org.apache.http.client.methods.HttpPost;
     7 import org.apache.http.impl.client.CloseableHttpClient;
     8 import org.apache.http.impl.client.HttpClients;
     9 import org.apache.http.message.BasicNameValuePair;
    10 import org.apache.http.protocol.HTTP;
    11 import org.apache.http.util.EntityUtils;
    12 
    13 import java.util.ArrayList;
    14 import java.util.List;
    15 import java.util.Map;
    16 
    17 public class HttpRequest {
    18     private static final String USER_AGENT = "Mozilla/5.0";
    19     private static final String TOKEN = "Bearer adad2342dfbcdcb44232bf6a";
    20     private static final String CONTENT_TYPE = "application/x-www-form-urlencoded";
    //发送GET请求
    21 public static String sendGet(String url){ 22 String result = ""; 23 CloseableHttpClient httpClient = HttpClients.createDefault(); 24 HttpGet httpGet = new HttpGet(url); 25 httpGet.addHeader("User-Agent", USER_AGENT); 26 httpGet.addHeader("Authorization", TOKEN); 27 try{ 28 HttpResponse response = httpClient.execute(httpGet); 29 HttpEntity entity = response.getEntity(); 30 result = EntityUtils.toString(entity); 31 }catch (Exception e){ 32 e.printStackTrace(); 33 } 34 return result; 35 } 36 //发送POST请求 37 public static String sendPost(String url,Map<String,String> mapParam){ 38 String result = ""; 39 CloseableHttpClient httpClient = HttpClients.createDefault(); 40 HttpPost httpPost = new HttpPost(url); 41 httpPost.setHeader("Content-Type",CONTENT_TYPE); 42 httpPost.addHeader("User-Agent" ,USER_AGENT); 43 httpPost.addHeader("Authorization", TOKEN); 44 try{ 45 if (mapParam != null){ 46 List<NameValuePair> postData = new ArrayList<NameValuePair>(); 47 for (Map.Entry<String,String> entry : mapParam.entrySet()){ 48 postData.add(new BasicNameValuePair(entry.getKey(),entry.getValue())); 49 } 50 httpPost.setEntity(new UrlEncodedFormEntity(postData, HTTP.UTF_8)); 51 } 52 HttpResponse response = httpClient.execute(httpPost); 53 HttpEntity entity = response.getEntity(); 54 result = EntityUtils.toString(entity); 55 }catch (Exception e){ 56 e.printStackTrace(); 57 } 58 return result; 59 } 60 }
  • 相关阅读:
    计算几何模板1 点部分
    TTimerThread和TThreadedTimer(都是通过WaitForSingleObject和CreateEvent来实现的)
    dddd
    Ubuntu中查看硬盘分区UUID的方法(所有Linux目录的解释)
    VS2010对C++11的支持列表(感觉大部分都不支持)
    VC版本的MakeObjectInstance把WNDPROC映射到类的成员函数
    FpGrowth算法
    Go语言Web框架gwk介绍2
    页面缓存OutputCache
    jquery mobile扁平化设计样式--Jquery mobile Flat UI介绍
  • 原文地址:https://www.cnblogs.com/zhao-gang/p/8459761.html
Copyright © 2011-2022 走看看