Buscar
Social
Ofertas laborales ES

Foro sobre Java SE > Obtener URL de una página que redirecciona

Hola,

estoy desarrollando una aplicación que comunica con el API de series.ly. La duda que tengo es, al obtener el enlace de un vídeo, la API te proporciona la URL de ejecución de la API, es decir, para cualquier vídeo tiene una dirección con este formato:

http://api.series.ly/v2/media/link/go/{idv}?auth_token={auth_token}&user_token={user_token}

Ese enlace te redirige a la página donde se hospeda el vídeo. Lo que necesito es, a partir del enlace de la API obtener la dirección de la página a la que redirige.

Muchas gracias, saludos!

septiembre 11, 2013 | Registered Commentertkows

Da toda la impresión de que es un servicio RESTFul, por lo que deberás implementar un cliente RESTFul para obtener la respuesta del servidor, en formato JSON o XML

Si es que desarrollas la aplicación en Java, se entiende.

septiembre 11, 2013 | Registered Commenterchoces

Si, eso no es problema, el cliente REST lo tengo implementado y es con el que obtengo la respuesta del servidor, que es el id del video con el cual construyo la dirección que redirecciona al vídeo en concreto. Lo que necesito es obtener el enlace al cual apunta dicha redirección.

septiembre 11, 2013 | Registered Commentertkows

¿En la respuesta en XML o JSON no viene ese enlace?

septiembre 12, 2013 | Registered Commenterchoces

Con la respuesta JSON recibo el id con el que construyo la dirección de acceso a la API, la llamada a la API no devuelve una respuesta JSON sino que es un simple vinculo que redirecciona a la dirección original.

septiembre 12, 2013 | Registered Commentertkows

Pues entonces tu mismo lo dices, esta claro.
Tienes que pasar SI o SI por el servicio que ofrece api.series.ly para resolver la URL. Ese servicio seguramente consultara en su base de datos interna cual es la URL real del video a partir del identificador que le se le pasa.
Por tanto, salvo que puedas acceder directamente a dicha base de datos, no vas a poder resolver "magicamente" tu mismo la URL final.

Un saludo

septiembre 12, 2013 | Unregistered CommenterUnoPorAhi

Me refiero a si es posible crear algun tipo de conexión que conecte, redirija y entonces obtener la URL de la conexión.

septiembre 12, 2013 | Registered Commentertkows

Siguiendo el esquema de la api REST que comentas:
http://api.series.ly/docs/

Te explica claramente como llegar a obtener el dato video_url que es lo que buscas no? Lo siento pero no veo entonces cual es el problema.

Un saludo

septiembre 12, 2013 | Unregistered CommenterUnoPorAhi

No, no es lo que busco, como digo en el primer mensaje, la dirección la obtengo, esto no tiene nada que ver con la API de series.ly, ni con JSON ni con nada de eso. He puesto el enlace a modo de ejemplo pero imaginemos que es sólo un HTML que al entrar redirige a otra página, como obtener esa otra página?

Saludos.

septiembre 12, 2013 | Registered Commentertkows

¿Por qué no explicas con ejemplos reales lo que envías y recibes?.
Estamos ejerciendo de adivinos.

Google: java find redirected url

Una de las primeras es la que sigue:

http://stackoverflow.com/questions/15057329/how-to-get-redirected-url-and-content-using-httpurlconnection

septiembre 12, 2013 | Registered Commenterchoces

No creo que estéis ejerciendo de adivinos pues si te fijas en mi primer mensaje indico que es lo que recibo y qué es lo que quiero, no he probado aún la solución que se indica en esa página pero si que parece que es lo que busco.

Gracias y disculpa si no me expresado con claridad pero estaba convencido de que estaba claro que pedia la dirección despues de redirigir.

septiembre 12, 2013 | Registered Commentertkows

Perfecto, encontré ahí la solución, exactamente es:

URLConnection con = new URL(url).openConnection();
System.out.println("Orignal URL: " + con.getURL());
con.connect();
System.out.println("Connected URL: " + con.getURL());
InputStream is = con.getInputStream();
System.out.println("Redirected URL: " + con.getURL());
is.close();

Yo estaba probando igual pero sin obtener el InputStream y no funcionaba. Gracias!

septiembre 12, 2013 | Registered Commentertkows

Me alegro de que lo hayas encontrado. Pero si por ejemplo al menos hubieses posteado ese código que dices que estabas probando, te hubiésemos podido ayudar a la primera.


Un saludo

septiembre 12, 2013 | Unregistered CommenterUnoPorAhi