import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.entity.UrlEncodedFormEntity;
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.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;
import com.pankebao.util.SettingUtils;
import net.sf.json.JSONObject;
public class HttpRequestUtil {
public static void main(String[] args) throws Exception{
DefaultHttpClient httpClient = new DefaultHttpClient();
String url = "https://api.netease.im/nimserver/user/create.action";
HttpPost httpPost = new HttpPost(url);
String key = "1234567890";
String nonce = "12345";
String curTime = String.valueOf((new Date()).getTime() / 1000L);
// 设置请求的header
httpPost.addHeader("Key", key);
httpPost.addHeader("Nonce", nonce);
httpPost.addHeader("CurTime", curTime);
httpPost.addHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
// 设置请求的参数
List<NameValuePair> nvps = new ArrayList<NameValuePair>();
nvps.add(new BasicNameValuePair("变量名称", "变量值"));
nvps.add(new BasicNameValuePair("password", "123456"));
httpPost.setEntity(new UrlEncodedFormEntity(nvps, "utf-8"));
// 执行请求
HttpResponse response = httpClient.execute(httpPost);
String json = EntityUtils.toString(response.getEntity(), "utf-8");
JSONObject jsonObject = JSONObject.fromObject(json);
// 打印执行结果
System.out.println(jsonObject);
}
/**
* POST请求
* 设置请求的参数
* JSONObject jsonParam = new JSONObject();
* jsonParam.put("key", "key");
*/
public static String httpPostJSONObject(String requestUrl, JSONObject jsonParam) throws Exception {
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(requestUrl);
// 设置请求的header
httpPost.addHeader("Content-Type", "application/json;charset=utf-8");
StringEntity entity = new StringEntity(jsonParam.toString(), "utf-8");
entity.setContentEncoding("UTF-8");
entity.setContentType("application/json");
httpPost.setEntity(entity);
// 执行请求
HttpResponse response = httpClient.execute(httpPost);
String json = EntityUtils.toString(response.getEntity(), "utf-8");
return json;
}
/**
* GET请求
*/
public static JSONObject httpGetJSONObject(String requestUrl) throws Exception {
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet(requestUrl);
// 设置请求的header
httpGet.addHeader("Content-Type", "application/json;charset=utf-8");
// 执行请求
HttpResponse response = httpClient.execute(httpGet);
String json = EntityUtils.toString(response.getEntity(), "utf-8");
return JSONObject.fromObject(json);
}
}
jar包:最重要的两个
httpclient-4.3.3.jar和httpcore-4.3.2.jar
下载地址: