我有一个重定向到任何网站的链接。我需要在所有重定向后找到一个URL。在收到任何不良响应之前,例如“ HTTP响应代码401”,我的代码才能正常工作。
例如,我们将URL https://google.com 缩短为 https://short.url 。
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>
<div id="root"></div>
因此,如果请求正常,我们在重定向后会得到一个URL( https://google.com )。但是,如果有一些响应代码,它将抛出我需要的URL异常。
URLConnection con = new URL("https://short.url").openConnection();
InputStream is = con.getInputStream();
URLAfterRedirect = String.valueOf(con.getURL());
is.close();
成功捕获异常后如何获取此URL?
答案 0 :(得分:0)
尝试一下:
URLConnection con = new URL("https://short.url").openConnection();
con.setInstanceFollowRedirects(false);
String new_url = con.getHeaderField("Location");
con = new URL(new_url).openConnection();
InputStream is = con.getInputStream();
URLAfterRedirect = String.valueOf(con.getURL());
is.close();