Ich habe eine URL, die auf eine andere url.I umleitet wollen die endgültige umgeleitet URL.My Code erhalten können:java URLConnection erhalten die endgültige URL umgeleitet
public class testURLConnection
{
public static void main(String[] args) throws MalformedURLException, IOException {
HttpURLConnection con =(HttpURLConnection) new URL("http://tinyurl.com/KindleWireless").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();
} }
Es gibt immer original url, während die redirectURL ist: http://www.amazon.com/Kindle-Wireless-Reading-Display-Globally/dp/B003FSUDM4/ref=amb_link_353259562_2?pf_rd_m=ATVPDKIKX0DER&pf_rd_s=center-10&pf_rd_r=11EYKTN682A79T370AM3&pf_rd_t=201&pf_rd_p=1270985982&pf_rd_i=B002Y27P3M.
Wie kann ich diese endgültige umgeleitete URL erhalten.
Hier ist, was ich mit Looping versucht, bis wir redirects.Still bekommen doesent die gewünschte URL holen:
public static String fetchRedirectURL(String url) throws IOException
{
HttpURLConnection con =(HttpURLConnection) new URL(url).openConnection();
//System.out.println("orignal url: " + con.getURL());
con.setInstanceFollowRedirects(false);
con.connect();
InputStream is = con.getInputStream();
if(con.getResponseCode()==301)
return con.getHeaderField("Location");
else return null;
}
public static void main(String[] args) throws MalformedURLException, IOException {
String url="http://tinyurl.com/KindleWireless";
String fetchedUrl=fetchRedirectURL(url);
System.out.println("FetchedURL is:"+fetchedUrl);
while(fetchedUrl!=null)
{ url=fetchedUrl;
System.out.println("The url is:"+url);
fetchedUrl=fetchRedirectURL(url);
}
System.out.println(url);
}
@ SJuan76 Suprise Surprise - Ich bin das gleiche Verhalten auf meinem Rechner nicht immer - MACOSX .. Ich erhalte den umgelenkten Wert ....... .......... orignal url: http://tinyurl.com/KindleWireless verbundene URL: http://tinyurl.com/KindleWireless umgeleitete URL: http://www.amazon.com/Kindle -Keyboard-Free-Wi-Fi-Anzeige/dp/B004HZYA6E – user1428716
aber die Weiterleitung URL, die wir bekommen, ist nicht die endgültige URL.Finale URL ist was ich eingefügt.Wenn Sie die tinyUrl in Browser Sie dann endgültige URL eingeben Sie ist: http : //www.ama zon.com/Kindle-Wireless-Reading-Display-Globally/dp/B003FSUDM4/ref=amb_link_353259562_2?pf_rd_m = ATVPDKIKX0DER & pf_rd_s = center-10 & pf_rd_r = 11EYKTN682A79T370AM3 & pf_rd_t = 201 & pf_rd_p = 1270985982 & pf_rd_i = B002Y27P3M – Jeets
@Jeets haben u Antwort auf Ihre question.because erhalten i .. – dipali