Java,Android,解析网址,重定向uri
问题内容:
我有一个受身份验证保护的网址:www.domain.com/alias
请求时将返回另一个URL:www.another.com/resource.mp4(不受保护)
我想知道Java中是否存在一种将从给定URL返回真实URL的方法。像这样:第二=解决(第一)
我正在考虑加载第一个并尝试读入响应,也许是location属性,但是由于我不是Java专家,所以我想知道Java是否已经面临这个问题。
问题答案:
这是我以前遇到的有关URL重定向的问题。尝试以下代码:
URL url = new URL(url);
HttpURLConnection ucon = (HttpURLConnection) url.openConnection();
ucon.setInstanceFollowRedirects(false);
URL secondURL = new URL(ucon.getHeaderField("Location"));
URLConnection conn = secondURL.openConnection();
这里的“魔术”发生在以下两个步骤中:
ucon.setInstanceFollowRedirects(false);
URL secondURL = new URL(ucon.getHeaderField("Location"));
默认情况下,InstanceFollowRedirects设置为true,但是您要将其设置为false以捕获第二个URL。为了能够从第一个URL获取第二个URL,您需要获取一个名为“
Location”的标题字段。