使用HttpClient版本 4.2.5
準備一已登錄用戶的sessionid:
- public static void main(String[] args) {
- String url = "http://10.10.10.90/urcweb/api/http.do?method=get_im_info";
- Map<String,String> header = new HashMap<String,String>();
- header.put("Cookie", "JSESSIONID=C1A34A2EC4C9423BB460E6F7005CA81E");
- System.out.println(httpGet(url,null,header));
- }
- /**
- * 發送 get 請求
- * @param url
- * @param encode
- * @param headers
- * @return
- */
- public static String httpGet(String url,String encode,Map<String,String> headers){
- if(encode == null){
- encode = "utf-8";
- }
- String content = null;
- DefaultHttpClient httpclient = new DefaultHttpClient();
- HttpGet httpGet = new HttpGet(url);
- //設置 header
- Header headerss[] = buildHeader(headers);
- if(headerss != null && headerss.length > 0){
- httpGet.setHeaders(headerss);
- }
- HttpResponse http_response;
- try {
- http_response = httpclient.execute(httpGet);
- HttpEntity entity = http_response.getEntity();
- content = EntityUtils.toString(entity, encode);
- } catch (Exception e) {
- e.printStackTrace();
- }finally {
- httpGet.releaseConnection();
- }
- return content;
- }
- /**
- * 組裝請求頭
- * @param params
- * @return
- */
- public static Header[] buildHeader(Map<String,String> params){
- Header[] headers = null;
- if(params != null && params.size() > 0){
- headers = new BasicHeader[params.size()];
- int i = 0;
- for (Map.Entry<String, String> entry:params.entrySet()) {
- headers[i] = new BasicHeader(entry.getKey(),entry.getValue());
- i++;
- }
- }
- return headers;
- }
測試結果:
成功模擬了該登錄用戶,如:輸出信息如下:
- {"friends":[{"id":7,"gname":"我的好友","type":null},{"id":0,"gname":"未分組","gmember":[]}],"extinfo":null,"userinfo":{"uid":"PTADMIN","icon":null,"skill":"1","user_type":"9510","uname":"平臺運營者","userId":"PTADMIN"}}