首頁  >  文章  >  Java  >  如何在 Java 中確定重定向 URL:標準方法和內容前檢查?

如何在 Java 中確定重定向 URL:標準方法和內容前檢查?

Linda Hamilton
Linda Hamilton原創
2024-11-07 07:52:02370瀏覽

How to Determine Redirected URLs in Java: Standard Approach and Pre-Content Check?

Java 中如何決定重定向的URL

在Java 中,使用URLConnection 存取網頁時,可能會遇到初始URL 不正確的情況重定向到不同的位置。確定重定向 URL 對於進一步處理或分析至關重要。

本文研究了從標頭欄位資訊取得重定向 URL 的方法,並提出了使用 URLConnection 的標準方法。

取得來自標頭欄位的重新導向 URL

之前,您從 Set-Cookie 標頭欄位中提取重新導向 URL,這不是標準方法。但是,存取 Location 標頭欄位可以提供一種可靠的方法來尋找重新導向的 URL。

使用 URLConnection 的標準方法

  1. 使用原始方法建立 URLConnection 實例網站。
  2. 使用 connect() 連線到 URL。
  3. 連線後,使用 getInputStream() 存取內容。
  4. 檢索內容後,呼叫 getURL() URLConnection 來取得最終的重定向 URL。
URLConnection con = new URL(url).openConnection();
con.connect();
InputStream is = con.getInputStream();
System.out.println("Redirected URL: " + con.getURL());
is.close();

在獲取內容之前確定重定向

如果您需要在獲取內容之前了解重定向內容,請按照以下步驟操作:

  1. 建立HttpURLConnection 實例。
  2. 設定 setInstanceFollowRedirects(false) 以防止自動重定向。
  3. 使用 connect() 連線到 URL .
  4. 檢查回應碼 (getResponseCode()) 以了解是否發生重新導向。
  5. 如果發生重定向,請使用 getHeaderField("Location") 取得新位置。
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