【问题标题】:Why HTTP/2 is not supported by Android's HttpUrlConnection?为什么 Android 的 HttpUrlConnection 不支持 HTTP/2?
【发布时间】:2019-03-11 07:44:37
【问题描述】:

我刚发现Android推荐的http客户端HttpUrlConnection不支持HTTP/2。

是否有特定原因不在 Android 上使用 HTTP/2?

【问题讨论】:

  • 多年前就支持 SPDY,它是 HTTP/2 的前身。您如何确定不支持 HTTP/2?不过,出于多种原因,OkHttp 是更好的选择。
  • 我正在监控服务器端的 https 请求。来自使用 HttpUrlConnection 的 Android 应用程序的请求始终为 HTTP/1.1,即使在 Android 9 上也是如此。而来自 iOS 应用程序的请求始终为 HTTP/2。

标签: android networking httpurlconnection okhttp http2


【解决方案1】:

如果你想利用 HTTP/2,你可以使用 OkHttp:

https://github.com/square/okhttp

无论如何,它都优于 HttpUrlConnection。如果您正在做任何复杂的事情,例如从 Web API 获取复杂的 JSON 响应,我建议您使用 Retrofit:

https://square.github.io/retrofit/

【讨论】:

    猜你喜欢
    • 2017-10-07
    • 1970-01-01
    • 1970-01-01
    • 2019-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-29
    • 2015-08-18
    相关资源
    最近更新 更多