POST示例:
private JSONObject postRequest(String url,JSONObject postData){
JSONObject object = null;
try {
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost postRequest = new HttpPost(url);
postRequest.setHeader("Authorization", "Bearer "+accessToken);
postRequest.setHeader("Content-Type","application/json; charset=UTF-8");
StringEntity entity = new StringEntity(postData.toString(),"UTF-8");
postRequest.setEntity(entity);
HttpResponse response = httpClient.execute(postRequest);
if(response !=null){
BufferedReader br = new BufferedReader(new InputStreamReader((response.getEntity().getContent())));
String output;
String objStr = "";
while ((output = br.readLine()) != null) {
objStr+=output;
}
object = new JSONObject(objStr);
if (response.getStatusLine().getStatusCode() == 201) {
object.put("statusFlag", Boolean.TRUE);
}else{
object.put("statusFlag", Boolean.FALSE);
}
}
httpClient.getConnectionManager().shutdown();
}catch (Exception e) {
e.printStackTrace();
}
return object;
}
GET:
HttpGet putRequest = new HttpGet(url);
putRequest.setHeader("Authorization", "Bearer "+accessToken);
putRequest.setHeader("Content-Type","application/json; charset=UTF-8");
HttpResponse response = httpClient.execute(putRequest);
PUT:
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPut putRequest = new HttpPut(url);
putRequest.setHeader("Authorization", "Bearer "+accessToken);
putRequest.setHeader("Content-Type","application/json; charset=UTF-8");
StringEntity entity = new StringEntity(postData.toString(),"UTF-8");
putRequest.setEntity(entity);
HttpResponse response = httpClient.execute(putRequest);
Others:
Note:
String user_pass = username + ":" + password;
String encoded = Base64.encodeBase64String( user_pass.getBytes() );
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost postRequest = new HttpPost(mtrackUrl);
postRequest.setHeader("Authorization", "Basic "+encoded);
postRequest.setHeader("Content-Type","application/xml; charset=UTF-8");
String xml = XML.toString(referObj);
注:一般来说http请求需要对应设置最大连接数,以及timeout时间等。