Java學習心得之 HttpClient的GET和POST請求
1. 前言
2. GET請求
3. POST請求
本篇博文記錄了HttpClient的GET和POST請求
本文內容基於以下文章:
http://huangqiqing123.iteye.com/blog/2054436 (HttpClient之 addHeader與setHeader)
http://zywang.iteye.com/blog/916834 (使用Apache HttpClient訪問JSP發送GET和POST請求)
http://www.linuxidc.com/Linux/2012-02/55502p3.htm (HttpClient 4.0的使用詳解)
GET請求的實例如下:
//httpClient
HttpClient httpClient = new DefaultHttpClient();
// get method
HttpGet httpGet = new HttpGet("https://api.microsofthealth.net/v1/me/Summaries/Daily");
// set header
String Au="Bearer "+access_token;
httpGet.setHeader("Authorization",Au);
//response
HttpResponse response = null;
try{
response = httpClient.execute(httpGet);
}catch (Exception e) {}
//get response into String
String temp="";
try{
HttpEntity entity = response.getEntity();
temp=EntityUtils.toString(entity,"UTF-8");
}catch (Exception e) {}
return temp;
GET請求的實例如下:
//httpClient
HttpClient httpClient = new DefaultHttpClient();
// get method
HttpPost httpPost = new HttpPost("https://login.live.com/oauth20_token.srf");
// set header
httpPost.setHeader("Content-Type","application/x-www-form-urlencoded");
//set params
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("client_id",client_id));
params.add(new BasicNameValuePair("redirect_uri",redirect_uri));
params.add(new BasicNameValuePair("client_secret",client_secret));
params.add(new BasicNameValuePair("code",code));
params.add(new BasicNameValuePair("grant_type","authorization_code"));
try{
httpPost.setEntity(new UrlEncodedFormEntity(params));
}catch (Exception e) {}
//response
HttpResponse response = null;
try{
response = httpClient.execute(httpPost);
}catch (Exception e) {}
//get response into String
String temp="";
try{
HttpEntity entity = response.getEntity();
temp=EntityUtils.toString(entity,"UTF-8");
}catch (Exception e) {}
return temp;