Android HttpURLConnection

HTTP 协议其实很简单,因为是文本格式,一看就懂,请求头只有两行是必须的,响应头也只有一行是必须的

本章节我们使用 Android 提供的用于处理 HTTP 请求的类 HttpURLConnection 来演示和加深 HTTP 的基本知识

HttpURLConnection

HttpURLConnection 是一种多用途、轻量极的 HTTP 客户端,可以用它来进行大部分的 HTTP 操作,而且会自动处理 gzip 压缩

HttpURLConnectionAPI 比较简单,但是同时这也使得我们可以更加容易地去使 用和扩展它

HttpURLConnection 的使用步骤

  1. 创建一个URL对象

    URL url = new URL("https://www.twle.cn/dy/text/getpost?lang=python");
    

    https://www.twle.cn/dy/text/getpost 是我们开发的一个 echo 服务器,可以把发送的内容使用文本格式打印出来

  2. 调用 URL 对象的 openConnection() 来获取 HttpURLConnection 对象实例

    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    
  3. 设置 HTTP 请求使用的方法 GET 或者 POST,或其它请求方式如:PUT

    conn.setRequestMethod("GET");
    
  4. 设置连接超时,读取超时的毫秒数,以及服务器希望得到的一些消息头

    conn.setConnectTimeout(6*1000);
    conn.setReadTimeout(6 * 1000);
    

    设置超时 6 秒,也就是客户端会等待 6 秒时间,如果服务器还没返回,则返回超时

  5. 对服务器端返回的状态码进行判断,比如是否正常返回(200)

    if(conn.getResponseCode() != 200)
    
  6. 如果正常返回,可以调用 getInputStream() 方法获得服务器返回的输入流,然后输入流进行读取

    InputStream in = conn.getInputStream();
    
  7. 最后调用 disconnect() 方法将 HTTP 连接关掉

    conn.disconnect();
    

Android 基础教程

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.