Czasami mój adres URL przekierowuje do nowej strony, więc chcę uzyskać adres URL nowej strony.Jak uzyskać przekierowany adres URL i zawartość za pomocą HttpURLConnection
Oto mój kod:
URL url = new URL("http://stackoverflow.com/questions/88326/");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setInstanceFollowRedirects(true);
System.out.println(conn.getURL().toString());
Wyjście jest:
stackoverflow.com/questions/88326/does-elmah-handle-caught-exceptions-as-well
Działa dobrze na stronie Stack Overflow, ale na stronie sears.com nie działa.
Jeśli wchodzimy cios URL:
http://www.sears.com/search=iphone
wyjście jest nadal:
Ale faktycznie, strona przekieruje do:
http://www.sears.com/tvs-electronics-phones-all-cell-phones/s-1231477012?keyword=iphone&autoRedirect=true&viewItems=25&redirectType=CAT_REC_PRED
Jak mogę rozwiązać ten problem?
Łącze Sears nie jest przekierowaniem HTTP: 'curl --head -I http: // www.sears.com/search = iphone'. Prawdopodobnie przekierowuje przez JavaScript. – apricot