no se puede obtener la ubicación cabecera de respuesta utilizando URLConnection de Java

StackOverflow https://stackoverflow.com/questions/3786161

  •  05-10-2019
  •  | 
  •  

Pregunta

Puede alguien sugerir amablemente lo que estoy haciendo mal aquí?
Estoy tratando de obtener la ubicación de cabecera para una determinada URL utilizando Java aquí está mi código:

URLConnection conn = url.openConnection();
String location = conn.getHeaderField("Location");  

que es extraño ya que sé a ciencia cierta la URL estoy refiriendo a devolver una cabecera Location y el uso de métodos como getContentType () o getContentLength () funciona a la perfección

¿Fue útil?

Solución

Tal vez encabezado Location se devuelve como una parte de la respuesta de redirección. Si es así, manijas URLConnection redirigir automáticamente mediante la emisión de la segunda petición al recurso en punta, por lo que necesita para desactivarlo:

((HttpURLConnection) conn).setInstanceFollowRedirects(false);

EDIT: Si realmente necesita una URL del objetivo redirección y no desea desactivar el manejo de redirección, puede llamar getURL() lugar (después de que se ha establecido la conexión).

scroll top