【问题标题】:Usage of URL and URLConnection classes in JavaJava 中 URL 和 URLConnection 类的使用
【发布时间】:2014-10-29 23:06:23
【问题描述】:

我一直在寻找一种简单的方法来在给定 URL、端口和路径的情况下执行 GET 请求。我遇到了这种工作正常的方法,但我开始想知道为什么它被设计成如此冗长。为什么 URL 类提供一个仅在幕后执行步骤 2,3 和 4 的 get() 方法不是更好?

    URL url = new URL("http", host, port, path);
    URLConnection conn = url.openConnection();
    conn.setDoInput(true);
    conn.connect();

【问题讨论】:

  • 不确定你在问什么。您在哪里看到冗余数据和/或步骤?
  • 我正在考虑使用 url.get() 方法,其中包括: URLConnection conn = url.openConnection(); conn.setDoInput(true); conn.connect();
  • 您实际上是在问为什么 API 没有比现在更高级。这就是它的设计方式;拥有更高级别的 API 将阻止开发人员访问现在可用的许多其他选项。您仍然可以编写自己的包装器!

标签: java http url get


【解决方案1】:

确实,Apache HttpClient 是 URLConnection 的更好替代品。 HttpClient 已集成到 Android API 中,对开发者更加友好。更多内容见http://hc.apache.org/httpcomponents-client-ga/tutorial/html/fundamentals.html

【讨论】:

    【解决方案2】:

    url.openStream() 绕过了对自管理 URLConnection 对象的需求。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-06-20
      • 2014-01-31
      • 2012-01-06
      • 2010-11-30
      • 2015-06-22
      • 2017-09-28
      • 2013-02-03
      • 1970-01-01
      相关资源
      最近更新 更多