您的位置:首页 > 理论基础 > 计算机网络

java 简单的HttpGet获取URL

2016-05-18 15:03 501 查看
1,创建HttpResponse ,利用HttpGet获取url,

2,new DefaultHttpClienk().execute返回HttpGet出的数据。给HttpResponse进行处理。

3,判断HttpResponse的getStatusLine().getStatusCode()是否等于200,(200代表网络返回的值是有的,正常的状态),

4,然后进行相应的操作。

这里我是获取json里的值的,所以是json

代码如下:

public String startrequestData() {

String strURL = "http://192.168.1.106:8080/TestOne/s?";
String sreString = null;

HttpResponse httpRespond = null;

String mString = "enter";
EditText editText = (EditText)findViewById(R.id.editText1);
EditText editText2 = (EditText)findViewById(R.id.editText2);
String md5String = MD5(editText2.getEditableText().toString());
sreString = new
StringBuffer(strURL).append("m=").append(mString).append("&").append("a=").append(editText.getEditableText()).append("&").append("b=").append(md5String).toString();
HttpGet getHttpGet = new HttpGet(sreString);
try {

httpRespond = new DefaultHttpClient().execute(getHttpGet);

// 200 是 http的返回状态码,表示正常状态,其他错误的如404错误之类的,可以自己搜索
if (httpRespond.getStatusLine().getStatusCode() == 200) {
String aString = httpRespond.getEntity().toString();
JSONObject aObject;
aObject = new JSONObject(aString);
return aObject.getString("msg");
}

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

}

注意:在android里,UI是必须放在主线程中的,网络有关的都是不可以放在主线程中的,所以需要另外重新起一个线程。

Handler handler = new Handler();

Theard theard = new Theard(new Runnble(){

public void run() {
// TODO Auto-generated method stub
startrequestData()
}

});

theard.start();

//这就是重新起一个线程

注意:我这里的网络是在启线程里调用的我自己写的方法startrequestData(),所以在启动线程的时候是要在里面调用你要写的获取url方法的,或者直接启了线程就把获取URL写在里面
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: