301 Moved Permanently
Ich versuche, HTML URL in Java. Aber 301 Moved Permanently
ist alles was ich habe. Andere URLs funktionieren. Was ist falsch? Das ist mein code:
hh= new URL("http://hh.ru");
in = new BufferedReader(
new InputStreamReader(hh.openStream()));
while ((inputLine = in.readLine()) != null) {
sb.append(inputLine).append("\n");
str=sb.toString();//returns 301
}
wenn unter einer anderen url funktioniert,so dass nichts falsch mit Ihrem code ist hh.ru ein Gültiger url?
Wenn ich Besuch, der URL bekomme ich eine 301-Weiterleitung. Hier ist ein link zum code, der folgende Umleitungen: stackoverflow.com/questions/1884230/...
Wenn ich Besuch, der URL bekomme ich eine 301-Weiterleitung. Hier ist ein link zum code, der folgende Umleitungen: stackoverflow.com/questions/1884230/...
InformationsquelleAutor Tony | 2013-08-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sie sind mit einer Umleitung auf andere URL. Es ist ganz normal, und eine Website kann mehrere Ursachen haben, die Sie umleiten. Folgen Sie einfach der Umleitung basierend auf "Location" - HTTP-header wie:
Ihrem browser folgende Umleitungen automatisch, aber mit Hilfe der URLConnection sollten Sie es tun, indem Sie Ihre eigenen. Wenn es Sie stört, nehmen Sie einen Blick auf andere Java HTTP client - Implementierungen wie Apache-HTTP-Client. Die meisten von Ihnen sind in der Lage zu Folgen, automatisch umleiten.
Es sieht aus wie die version hängt davon ab, user-agent Sie-Einstellung. Diese bietet eine vollständige version in meinem test: - Anschluss.setRequestProperty("User-Agent", "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2");
Wow. Total funktioniert!
Wie kann ich testen, das nächste mal, wenn es nicht funktioniert? Ich meine, welche Strategie sollte ich verwenden, um zu beheben diese Parameter?
Wenn Sie wollen, Holen die gleichen Seiten wie browser funktioniert, dann Verhalten sich ähnlich wie browser, wie möglich: 1. Folgen Sie leitet und mit anderen HTTP-codes 2. Set typische Header (User-agent, Accept, Referrer, etc.), wenn Sie eine Anfrage 3. Die Verwendung von cookies und maitain Authentifizierung, ggf.
InformationsquelleAutor Jk1
fand diese Antwort hilfreich und verbessert ein wenig durch die Möglichkeit, mehrere Umleitungen (z.B. 307 dann 301).
InformationsquelleAutor Aviator
Es ist nichts falsch mit Ihrem code. Die Meldung bedeutet, dass
hh.ru
dauerhaft in eine andere Domäne verschoben.InformationsquelleAutor ProgramFOX
Getestet habe ich den code und es ist ok, aber wenn ich "hh.ru" das gleiche problem wie deins, und wenn ich mit lynx(command-line-browser) zu verbinden "hh.ru" es wird mir zeigen, dass er umgeleitet wird auf eine andere url und dann zeigen Sie mir, dass es verschoben wird dauerhaft und nach, dass diese Warnung:
"Alarm!!!: Dieser client enthält keine Unterstützung für HTTPS-URLs"
InformationsquelleAutor Soosh
Überprüfen, ob die angegebene URL ist HTTP oder HTTPS, sollten Sie erwägen Protokoll ist Sie nur die domain-Namen wie
http(s)://domainname.com/resource-name
Lesen: https://en.wikipedia.org/wiki/HTTP_301
InformationsquelleAutor Vishrant
Entschloss ich mich meine, wenn ich die bestimmte Datei auf dem server ausgeführt.
Statt
http://hh.ru
,Ich verwendet
http://hh.ru/index.php
.Es war für mich
InformationsquelleAutor kimoduor