首页  >  文章  >  Java  >  如何在 Java 中查找重定向的 URL?

如何在 Java 中查找重定向的 URL?

Patricia Arquette
Patricia Arquette原创
2024-11-11 21:21:03497浏览

How to Find Redirected URLs in Java?

在 Java 中查找重定向的 URL

在 Java 中访问网页时,处理 URL 重定向到备用位置的场景至关重要。要确定重定向的 URL,您可以使用 URL 和 URLConnection 类。

使用 URLConnection.getUrl()

使用 URLConnection 建立连接后,您可以检索连接通过调用 getUrl() 重定向到的实际 URL。这提供了重定向的 URL,因为默认情况下连接会自动遵循重定向。

URLConnection con = url.openConnection();
con.connect();
System.out.println("Redirected URL: " + con.getURL());

在检索内容之前检查重定向

在某些情况下,您可能需要在获取 URL 内容之前了解 URL 是否重定向。为此,请按照以下步骤操作:

  1. 创建 HttpURLConnection 实例并将 setInstanceFollowRedirects 设置为 false。
  2. 使用 connect() 建立连接。
  3. 获取响应使用 getResponseCode() 的代码。如果是重定向代码(例如 301、302),则表示重定向。
  4. 使用 getHeaderField("Location") 检索实际重定向的 URL。
HttpURLConnection con = (HttpURLConnection)(new URL( url ).openConnection());
con.setInstanceFollowRedirects( false );
con.connect();
int responseCode = con.getResponseCode();
String location = con.getHeaderField( "Location" );

以上是如何在 Java 中查找重定向的 URL?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn