• 在android用Get方式发送http请求


    烦人的日子终于过去啦,终于又可以写博客啦,对自己的android学习做个总结,方便以后查看...。。。

    一、在android用Get方式发送http请求,使用的是java标准类,也比较简单。

    主要分以下几步:

    1.构造URL

    URL url = new URL(String path);

    2.设置连接

    httpURLConnection = (HttpURLConnection) url.openConnection();
    //超时时间
    httpURLConnection.setConnectTimeout(3000);
    //表示设置本次http请求使用GET方式
    httpURLConnection.setRequestMethod("GET");
    int responsecode = httpURLConnection.getResponseCode();//返回至为响应编号,如:HTTP_OK表示连接成功。
    3.获取返回数据

    if(responsecode == HttpURLConnection.HTTP_OK){
    inputStream = httpURLConnection.getInputStream();
    }   //得到inputStream 就好办啦。
    new InputStreamReader(inputStream,"utf-8")

    4.关闭连接

    void disconnect()

    二、下面通过一个简单的Demo实现get方式的请求:

    package com.http.get;  
      
    import java.io.BufferedReader;  
    import java.io.FileOutputStream;  
    import java.io.IOException;  
    import java.io.InputStream;  
    import java.io.InputStreamReader;  
    import java.io.UnsupportedEncodingException;  
    import java.net.HttpURLConnection;  
    import java.net.MalformedURLException;  
    import java.net.URL;  
      
      
      
    public class HttpUtils {  
      
        private static String URL_PATH="http://www.baidu.com";  
            private static HttpURLConnection httpURLConnection = null;  
        public HttpUtils(){  
              
        }   
      
         public static void shuchu(){  
            InputStream inputStream = getInputStream();  
            String result;  
            try {  
                BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream,"utf-8"));  
                result = "";  
                String line = "";  
           try {  
                while((line = reader.readLine())!= null){  
                       result = result+ line;  
                   }  
         } catch (IOException e) {  
                // TODO Auto-generated catch block  
                e.printStackTrace();  
       }  
              System.out.println(result);  
              httpURLConnection.disconnect();  
            } catch (UnsupportedEncodingException e) {  
                // TODO Auto-generated catch block  
                e.printStackTrace();  
            }  
             
        }  
        /** 
         * 获取服务端的数据,以InputStream返回 
         * @return 
         */  
        public static InputStream getInputStream(){  
            InputStream inputStream = null;  
              
            try {  
                URL url = new URL(URL_PATH);  
                if(url != null){  
                    try {  
                        httpURLConnection = (HttpURLConnection) url.openConnection();  
                        //超时时间  
                        httpURLConnection.setConnectTimeout(3000);  
                        //表示设置本次http请求使用GET方式  
                        httpURLConnection.setRequestMethod("GET");  
                        int responsecode = httpURLConnection.getResponseCode();  
                          
                        if(responsecode == HttpURLConnection.HTTP_OK){  
                            inputStream = httpURLConnection.getInputStream();  
                        }  
                    } catch (IOException e) {  
                        // TODO Auto-generated catch block  
                        e.printStackTrace();  
                    }  
                }  
            } catch (MalformedURLException e) {  
                // TODO Auto-generated catch block  
                e.printStackTrace();  
            }  
            return inputStream;  
        }  
        public static void main(String[] args){  
            //保存文件到本地  
            //saveImageToDisk();  
            shuchu();  
        }  
    }  
    

      //因为get方式是这ava标准类,直接写的java程序,不过都一样,android中也是一样的。。

    简单的访问了百度,返回的就是百度搜索首页的源代码:图片一直上传不了。。。就不截图啦。

    正确返回的就是你在网页单击右键有个查看源代码,返回的就是它,输出的也是它,自己可以去对比下一样不,是一样的。。
  • 相关阅读:
    首次调用u8api遇到的问题总结
    为datagridview添加自定义按钮
    我对数据库索引的初步了解
    ObjectARX 常见编译错误解决方式记录
    手动修改Visual Studio 版本互转工具
    [经验] FAS 20号指令的深入研究
    Object ARX 统一设置所有图层的RGB颜色
    ARX 选择集获得所有图形 遍历 实例 备忘
    ObjectARX2010 学习笔记002:读取已经存在的DWG文件中的内容
    利用编译时的全局声明对抗反编译
  • 原文地址:https://www.cnblogs.com/jycboy/p/4736278.html
Copyright © 2020-2023  润新知