網絡請求數據

public String getJsonFromWeb() {
        URL url = null;
        HttpURLConnection urlConn = null;
        BufferedReader br = null;
        StringBuffer sb = new StringBuffer();// 定義緩存字符串,拼裝字符串
        try {
            url = new URL(JSON_URL);// 建立和服務器的鏈接對象URL
            urlConn = (HttpURLConnection) url.openConnection();// 打開鏈接
            urlConn.setConnectTimeout(5 * 1000);// 設置鏈接超時容忍時間
            urlConn.setReadTimeout(5 * 1000);// 設置讀取時間
            if (urlConn.getResponseCode() == 200) {// 若是相應碼爲200表示響應成功,而且同時成功的相應了數據
                // 得到服務器相應的數據,字節輸入流(數據流),轉換爲緩存字符流便於讀取
                br = new BufferedReader(new InputStreamReader(
                        urlConn.getInputStream(), "utf-8"));
                String str = null;
                while ((str = br.readLine()) != null) {// 一行行的讀取,一行行的收集
                    sb.append(str);
                }
            }

        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        return sb.toString();// 轉換爲字符串,返回
    }//獲取網絡列表    public static String getWebColumn(String URL)    {        String data ="";        //建立請求對象        HttpGet httpGet = new HttpGet(URL);                //設置參數        HttpParams params=new BasicHttpParams();        HttpConnectionParams.setConnectionTimeout(params, 5000);        HttpConnectionParams.setSoTimeout(params, 5000);        //執行請求的對象        HttpClient client=new DefaultHttpClient(params);        //執行請求鍍錫        try {            HttpResponse resp = client.execute(httpGet);                        //判斷是否響應成功            if(resp.getStatusLine().getStatusCode() == 200)            {                //獲取響應 的數據                HttpEntity entity = resp.getEntity();                                data = EntityUtils.toString(entity, "utf-8");            }        } catch (ClientProtocolException e) {            // TODO Auto-generated catch block            e.printStackTrace();        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }                return data;    }    //獲取網絡列表    public static String getWebData(String URL,int p,String id)    {        StringBuffer sb=new StringBuffer(URL);        sb.append("&catalog_id="+id);        sb.append("&pn="+p);                String data ="";        //建立請求對象        HttpGet httpGet = new HttpGet(sb.toString());        //設置參數        HttpParams params=new BasicHttpParams();        HttpConnectionParams.setConnectionTimeout(params, 5000);        HttpConnectionParams.setSoTimeout(params, 5000);        //執行請求的對象        HttpClient client=new DefaultHttpClient(params);        //執行請求鍍錫        try {            HttpResponse resp = client.execute(httpGet);                        //判斷是否響應成功            if(resp.getStatusLine().getStatusCode() == 200)            {                //獲取響應 的數據                HttpEntity entity = resp.getEntity();                                data = EntityUtils.toString(entity, "utf-8");            }        } catch (ClientProtocolException e) {            // TODO Auto-generated catch block            e.printStackTrace();        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }                return data;    }
相關文章
相關標籤/搜索