"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como encontrar URLs redirecionados em Java?

Como encontrar URLs redirecionados em Java?

Publicado em 15/11/2024
Navegar:555

How to Find Redirected URLs in Java?

Encontrando URLs redirecionados em Java

Ao acessar páginas da web em Java, é crucial lidar com cenários em que URLs redirecionam para locais alternativos. Para determinar o URL redirecionado, você pode usar as classes URL e URLConnection.

Usando URLConnection.getUrl()

Depois de estabelecer uma conexão usando URLConnection, você pode recuperar o URL real para o qual a conexão redireciona invocando getUrl(). Isso fornece o URL redirecionado, já que a conexão segue automaticamente os redirecionamentos por padrão.

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

Verificando o redirecionamento antes de recuperar o conteúdo

Em certos casos, você pode querer saber se um URL redireciona antes de buscar seu conteúdo. Para conseguir isso, siga estas etapas:

  1. Crie uma instância HttpURLConnection e defina setInstanceFollowRedirects como false.
  2. Estabeleça uma conexão usando connect().
  3. Obtenha a resposta código usando getResponseCode(). Se for um código de redirecionamento (por exemplo, 301, 302), ele indica um redirecionamento.
  4. Recupere o URL redirecionado real usando getHeaderField("Location").
HttpURLConnection con = (HttpURLConnection)(new URL( url ).openConnection());
con.setInstanceFollowRedirects( false );
con.connect();
int responseCode = con.getResponseCode();
String location = con.getHeaderField( "Location" );
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3