【问题标题】:How to download file from HTTP url that redirects to HTTPS url on Android?如何从 HTTP url 下载重定向到 Android 上的 HTTPS url 的文件?
【发布时间】:2016-02-23 21:05:00
【问题描述】:

我有一些网址,我需要从中下载文件。

在某些情况下,我得到了 301 重定向,在某些情况下,它会将我重定向到 HTTPS 网址 (例如,这是重定向到 https 的真实 http url:http://bit.ly/1laNsED

我事先不知道我会从这个 url 得到什么 - 实际文件、301 重定向或 301 重定向到 HTTPS。

我如何在 Android 中正确处理这种情况?

更新:使用 OkHttp 解决了这个问题。

【问题讨论】:

    标签: java android


    【解决方案1】:

    【讨论】:

    • 建议使用 OkHttp ...它非常高效且易于使用。
    【解决方案2】:
     private static String readUrl(String urlString) throws Exception {
            BufferedReader reader = null;
            try {
                URL url = new URL(urlString);
                reader = new BufferedReader(new InputStreamReader(url.openStream()));
                StringBuffer buffer = new StringBuffer();
                int read;
                char[] chars = new char[1024];
                while ((read = reader.read(chars)) != -1)
                    buffer.append(chars, 0, read);
    
                return buffer.toString();
            } finally {
                if (reader != null)
                    reader.close();
            }
        }
    

    ===============================================

    JSONObject json = new JSONObject(readUrl("https://"+Globals._Gateway+"/Android/Service.svc/GetFile/"+Param));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-08-07
      • 2018-04-17
      • 1970-01-01
      • 1970-01-01
      • 2015-11-02
      • 1970-01-01
      相关资源
      最近更新 更多