Java 如何在Android上从HTTP url下载重定向到HTTPS url的文件?

Java 如何在Android上从HTTP url下载重定向到HTTPS url的文件?,java,android,Java,Android,我有一些网址,我需要从中下载文件 在某些情况下,我得到了301重定向,在某些情况下,它将我重定向到HTTPS url (例如,这是重定向到https的真实http url:) 我事先不知道我会从这个url得到什么-实际文件,301重定向或301重定向到HTTPS 我如何在Android中正确处理这种情况 更新:使用OkHttp解决了此问题。 private static String readUrl(String urlString) throws Exception { Bu

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

在某些情况下,我得到了301重定向,在某些情况下,它将我重定向到HTTPS url (例如,这是重定向到https的真实http url:)

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

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

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

 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));

您应该使用https的HttpsURLConnection, 检查下面的链接,


使用OkHttp是明智的……它非常高效且易于使用。