首頁 >Java >java教程 >如何在 Java 中尋找重定向的 URL?

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

Patricia Arquette
Patricia Arquette原創
2024-11-11 21:21:03535瀏覽

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