zoukankan      html  css  js  c++  java
  • Android网络开发之HttpURLConnection

    http是一个可靠的传输,建立在TCP/IP连接之上,缺省端口是80,其他端口号也可以用。Android可以用HttpURLConnection或HttpClient接口来开发http程序。

    http通信使用最多的是Get和Post。Post和Get的不同之处在于Get的参数放在URL字串中,而Post的参数放在http请求数据中。

    HttpURLConnection继承自URLConnection,都是抽象类,无法直接实例化对象。其对象主要通过URL的openConnection方法获得。

    openConnection方法只创建URLConnection或HttpURLConnection实例,但是不进行真正的连接操作,并且每次openConnection都创建一个新的实例。

    在连接之前,可以设置一些属性,比如超时时间等。

    HttpURLConnection默认使用Get方法,如果要使用Post方法,则需要使用setRequestMethod方法。

    // 示例代码:通过Post方式发送请求

    URL url = new URL(“http://www.google.com”);

    HttpURLConnection conn = (HttpURLConnection) url.openConnection();

    // 设置输入/出流

    conn.setDoOutput(true);

    conn.setDoInput(true);

    // 设置请求方式为Post

    conn.setRequestMethod(“POST”);

    // Post请求不能使用缓存

    conn.setUseCaches(false);

    conn.setInstanceFollowRedirects(true);

    // 设置Content-type

    conn.setRequestProperty(“Content-Type”,“application/x-www-form-urlencoded”);

    // 在调用getOutputStream时会隐式调用conn.connect()

    DataOutputStream dos = new DataOutputStream(conn.getOutputStream());

    String content = “name=” + URLEncoder.encode(“Jake”,“gb2312”);

    dos.writeBytes(content);

    dos.flush();

    dos.close();

    // 连接完成之后可以关闭这个连接

    conn.disconnect();

     

    // 示例代码:读取网页上的内容

    InputStreamReader isr = new InputStreamReader(conn.getInputStream());

    BufferedReader br = new BufferedReader(isr);

    String line = null;

    while(((line = br.readLine()) != null)) { … }

    // 关闭连接

    isr.close();

    conn.disconnect();

     

    // 示例代码:获取网络上的一张图片

    conn.setDoInput(true);

    conn.connect(); // 这条语句要不(待定)

    InputStream is = conn.getInputStream();

    // 将InputStream数据转换成Bitmap

    Bitmap bitmap = BitmapFactory.decodeStream(is);

    // 关闭数据流

    is.close();

  • 相关阅读:
    matlab在图像中画长方形(框)
    将matlab的figure保存为pdf,避免图片太大缺失
    机器学习经典书籍
    2008年北大核心有效期 计算机类核心(2011-01-31 15:02:46)
    解决Matlab画图直接保存.eps格式而导致图不全的问题
    matlab从文件夹名中获得该文件夹下所图像文件名
    获取图片中感兴趣区域的信息(Matlab实现)
    Eclipse 浏览(Navigate)菜单
    Eclipse 查找
    Eclipse 悬浮提示
  • 原文地址:https://www.cnblogs.com/fengzhblog/p/3185498.html
Copyright © 2011-2022 走看看