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

android HttpURLConnection

2014-12-03 22:57 357 查看
Android中提供的HttpURLConnection和HttpClient接口可以用来开发HTTP程序。
下面要说的是HttpURLConnection ,HttpURLConnection 有两种方式:
get和post

[align=left]//HttpURLConnection get[/align]
              
try
{
                     URL url =
new
URL("http://www.51cto.com/index.jsp?par=123456"
); 
                     
//使用HttpURLConnection打开连接 
                     HttpURLConnection urlConn=(HttpURLConnection)url.openConnection();
//去服务器求请
[align=left]                     urlConn.setConnectTimeout(5*1000);[/align]
                     
//设置输入和输出流 
                     urlConn.setDoOutput(
true); 
                     urlConn.setDoInput(
true);
[align=left]                     [/align]
           
//得到读取的内容(流) 
            InputStreamReader in =
new
InputStreamReader(urlConn.getInputStream()); 
//获取服务器返回的东西
           
// 为输出创建BufferedReader 
            BufferedReader buffer =
new
BufferedReader(in); 
            String inputLine =
null
           
//使用循环来读取获得的数据 
           
while
(((inputLine = buffer.readLine()) !=
null)) 
[align=left]            { [/align]
               
//我们在每一行后面加上一个"\n"来换行 
               
resultData
+= inputLine +
"\n"

[align=left]            }          [/align]
           
//关闭InputStreamReader 
[align=left]            in.close(); [/align]
           
//关闭http连接 
[align=left]            urlConn.disconnect();[/align]
              }
catch
(Exception e) {
                     
//
TODO: handle exception
[align=left]              }[/align]
[align=left]
[/align]
[align=left]
[/align]

[align=left]//HttpURLConnection post[/align]
              
try
{
                     URL url =
new
URL("http://www.51cto.com/index.jsp?par=123456"
); 
                     
//使用HttpURLConnection打开连接 
                     HttpURLConnection urlConn=(HttpURLConnection)url.openConnection();
//去服务器求请
[align=left]                     urlConn.setConnectTimeout(5*1000);[/align]
                     
//设置输入和输出流 
                     urlConn.setDoOutput(
true); 
                     urlConn.setDoInput(
true);
                     urlConn.setRequestMethod(
"POST");
                     urlConn.setRequestProperty(
"Content-Type","application/x-www-form-urlencoded"
); 
           
// 连接,从postUrl.openConnection()至此的配置必须要在connect之前完成, 
           
// 要注意的是connection.getOutputStream会隐含的进行connect。 
[align=left]            urlConn.connect();[/align]
[align=left]           [/align]
            DataOutputStream out =
new
DataOutputStream(urlConn.getOutputStream()); 
           
//要上传的参数 
            String content =
"par="
+ URLEncoder.encode(
"ABCDEFG",
"gb2312"
); 
           
//将要上传的内容写入流中 
[align=left]            out.writeBytes(content);  [/align]
           
//刷新、关闭 
[align=left]            out.flush(); [/align]
[align=left]            out.close();[/align]
[align=left]                     [/align]
           
//得到读取的内容(流) 
            InputStreamReader in =
new
InputStreamReader(urlConn.getInputStream()); 
//获取服务器返回的东西
           
// 为输出创建BufferedReader 
            BufferedReader buffer =
new
BufferedReader(in); 
            String inputLine =
null
           
//使用循环来读取获得的数据 
           
while
(((inputLine = buffer.readLine()) !=
null)) 
[align=left]            { [/align]
               
//我们在每一行后面加上一个"\n"来换行 
               
resultData
+= inputLine +
"\n"

[align=left]            }          [/align]
           
//关闭InputStreamReader 
[align=left]            in.close(); [/align]
           
//关闭http连接 
[align=left]            urlConn.disconnect();[/align]
              }
catch
(Exception e) {
                     
//
TODO: handle exception
[align=left]              }[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息