Android网络(二)原生的HTTP请求工具--HttpURLConnection的用法

引言

HttpURLConnection 是 Android 提供的一个轻量级 HTTP 客户端,支持多种 HTTP 方法,尽管在功能上不如之后会介绍的OkHttp复杂多样,但它在一些基本的网络请求场景下依然表现出色,简单易用和直接集成两个优点让HttpURLConnection仍是处理简单 HTTP 请求时的首选工具。

应用场景和基本用法

HttpURLConnection的应用场景相当广泛,这里以天气预报应用为例,想要实现天气预报的核心功能非常简单,只需要从服务器获取当前天气信息并向服务器发送用户的位置信息,

应用启动时需要从天气服务的API获取当前天气信息。这个需求可以通过 GET 请求来实现

fun getWeatherData(apiUrl: String): String {
    val url = URL(apiUrl)
    val connection = url.openConnection() as HttpURLConnection
    connection.requestMethod = "GET"
    connection.connectTimeout = 8000
    connection.readTimeout = 8000

    try {
        val inputStream = connection.inputStream
        val reader = BufferedReader(InputStreamReader(inputStream))
        val response = StringBuilder()
        var line: String?
        while (reader.readLine().also { line = it } != null) {
            response.append(line)
        }
        return response.toString()
    } finally {
        con
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值