Java/Android 获取网络重定向文件的真实URL的示例代码

网友投稿 497 2023-03-15


Java/Android 获取网络重定向文件的真实URL的示例代码

前言:

今天在测试使用第三方提供的URL进行文件下载的时候,得到了一个被重定向的url。很不幸的是这个URL对于我来说没办法进行文件下载。这时候就需要获得重定向文件的真实URL。

问题分析 :

其实java 使用HttpURLConnection下载的的时候,会自动下载重定向后的文件,但是我们无法获知目标文件的真实文件名,文件类型,用下面的方法可以得到真实的URL

解决方案 :

需要注意的是在android 4.0之后网络请求不能在主线程执行

new Thread(new Runnable() {

@Override

pubECdSTUQoZlic void run() {

String str = "http://118.31.73.173:8080/magnet/play.m3u8?code=4459d2600da1379a9b06967edf518c05f0c9b43177cf28d9a70070264c228693e3888b2ab265521e01e6034c807bebdf02da4ebbf208065fd4b2d0062a3e3d83abe2c0659500dc168a9c0ba6a9098320ee4040ce57e7c57d9e1ec3f03900f631c84df0e6f38669d73ad6102fd0169b2907c3707cc2b71f5de6d789";

URL url = null;

try {

url = new URL(str);

HttpURLConnection conn = (HttpURLConnection) url.openConnection();

conn.getResponseCode();

final String realUrl = conn.getURL().toString();

conn.disconnect();

Log.e("asd", "真实URL:" + realUrl);

} catch (MalformedURLException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}

}

}).start();

最后不要忘了添加网络权限


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:api接口文档模板怎么用(api接口怎么编写)
下一篇:开票接口测试用例(开票软件测试连接失败)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~