小白求教Android开发中HttpURLConnection的网络连接问题
展开全部
你可以试试用我这个function... get method 的。。
public static String getTextContent( String urlpath,String encoding) throws Exception {
//可以看到,getTextContent接收到了目前还处于字符串形似的path,和编码。
//将字符串形式的path,转换成一个url
URL url = new URL(urlpath);
//得到url之后,将要开始连接网络,以为是连接网络的具体代码
//首先,实例化一个HTTP连接对象conn
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
//定义请求方式为GET,其中GET的大小写不要搞错了。
conn.setRequestMethod("GET");
//定义请求时间,在ANDROID中最好是不好超过10秒。否则将被系统回收。
conn.setConnectTimeout(6*1000);
//请求成功之后,服务器会返回一个响应码。如果是GET方式请求,服务器返回的响应码是200,post请求服务器返回的响应码是206(貌似)。
if(conn.getResponseCode()== 200){
//返回码为真
//从服务器传递过来数据,是一个输入的动作。定义一个输入流,获取从服务器返回的数据
InputStream inStream = conn.getInputStream();
//得到输入流的数据之后,调用readStream方法对输入流进行处理。返回的一个字节数组。
//按ctrl进入readStream方法,看看readStream是怎么处理的
byte[] data = readStream(inStream);
//得到返回值。那么readStream主要做了些什么?readStream主要处理了将服务器返回的数据写到内存这个工作,也就是保存到了本地(我觉得)。
//以字符串形式的返回。String(data,encoding)是个知识点。
return new String(data,encoding);
}
return null;
}
/**
* 获取URL路径指定的网页代码·
* @param urlpath URL路径
* @throws Exception
*/
public static InputStream getContent( String urlpath,String encoding) throws Exception {
URL url = new URL(urlpath);
//实例化一个HTTP连接对象conn
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
//定义请求方式为GET,其中GET的格式需要注意
conn.setRequestMethod("GET");
//定义请求时间,在ANDROID中最好是不好超过10秒。否则将被系统回收。
conn.setConnectTimeout(6*1000);
if(conn.getResponseCode()== 200){
return conn.getInputStream();
}
return null;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询