Java URL リダイレクトの取得
Java の URLConnection を介して Web ページにアクセスする場合、URL リダイレクトを処理することが不可欠です。リダイレクトされた URL を取得するには、「Set-Cookie」などのヘッダー フィールドのみに依存する以外の標準的な手法が存在します。
リダイレクトされた URL を決定する主な方法は、接続の確立後に URLConnection インスタンスで getUrl() を呼び出すことです。 :
URLConnection con = new URL(url).openConnection(); // Connect to the URL con.connect(); // Obtain the redirected URL URL redirectedURL = con.getURL();
このメカニズムは、中間応答や「Location」ヘッダーの欠落に関係なく、リダイレクトされた URL を正確にキャプチャします。
コンテンツを取得する前にリダイレクトを確認する必要がある場合は、次のアプローチをお勧めします。
HttpURLConnection con = (HttpURLConnection)(new URL(url).openConnection()); // Deactivate automatic redirection following con.setInstanceFollowRedirects(false); // Establish the connection con.connect(); // Retrieve the response code int responseCode = con.getResponseCode(); // Examine the response code for redirection if (responseCode == HttpURLConnection.HTTP_MOVED_TEMP || responseCode == HttpURLConnection.HTTP_MOVED_PERM || responseCode == HttpURLConnection.HTTP_SEE_OTHER) { // Fetch the "Location" header field String location = con.getHeaderField("Location"); // Print the redirected URL System.out.println(location); }
これらのメソッドは、Java で URL リダイレクトを処理するための信頼できるメカニズムを提供し、正確性を確保します。 Web ナビゲーション中の URL 情報。
以上がJavaでリダイレクトされたURLを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。