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

android Poast方式获取数据网络不稳定

2013-04-01 14:58 323 查看


/**POST请求

* @param url
请求地址

* @param params参数【Post运作传送变数必须用NameValuePair[](键值对)阵列储存】

* @return

*/

public String requestByPost(String url,List <NameValuePair> params,Context icontext)

{

System.out.println("---->"+url+"/"+params.toString());

if(!MyApplication.isOnlyWifi||(MyApplication.isOnlyWifi&&isWifiActive(icontext)))

{

/*建立HttpPost连接*/

try {

HttpPost httpRequest=new HttpPost(url);

UrlEncodedFormEntity encoded=new UrlEncodedFormEntity(params,HTTP.UTF_8);

//发出HTTP request

httpRequest.setEntity(encoded);

//取得HTTP response

HttpResponse httpResponse=new DefaultHttpClient().execute(httpRequest);

//若状态码为200(HttpStatus.SC_OK)

if(httpResponse.getStatusLine().getStatusCode()==HttpStatus.SC_OK){

//取出回应字串

String strResult=EntityUtils.toString(httpResponse.getEntity());

return strResult;

}else{

// System.out.println("==返回数据404原因==>"+httpResponse.getStatusLine().getStatusCode());

return "404";

}

} catch (Exception e) {

// TODO Auto-generated catch block

return CONNECT_FALSE;

}

}else{//Wifi网不通

return null;

}

}

你们知不知道为什么我的代码总是一会有数据一会没有数据啊?在没有数据的时候我用电脑的浏览器打开这个链接的时候却是有数据。。。这个问题谁遇到过啊?

没有数据的时候代码总是在下面这句上停住了等半天也过不去。就是说请求发出去了但是数据获取不到。
//取得HTTP response

HttpResponse httpResponse=new DefaultHttpClient().execute(httpRequest);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: