N
NLG
Gast
Hey,
ich versuche mit dem httpClient den Inhalt einer Webseite abzurufen. Mein bisheriger Code sieht so aus:
ich bekomme dann allerdings immer folgendes:
<TITLE>FEHLER: Der angeforderte URL konnte nicht geholt werden</TITLE>
<HEAD> inhalt hab ich gelöscht
</HEAD><BODY>
<H1>FEHLER</H1>
<H2>Der angeforderte URL konnte nicht geholt werden</H2>
<HR noshade size="1px">
<P>
Während des Versuches, die Anfrage
<PRE>
GET / HTTP/1.1
:
Host: proxynameort
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.3 (java 1.5)
</PRE>
zu verarbeiten, trat der folgende Fehler auf:
<UL>
<LI>
<STRONG>Ungültige Anfrage</STRONG>
</UL>
<P>
Ein Teil der HTTP-Anfrage ist ungültig. Mögliche Gründe:
<UL>
<LI>Fehlende oder unbekannte Anfrage-Methode (GET, POST)
<LI>Fehlender URL
<LI>Fehlender HTTP Identifier (HTTP/1.0)
<LI>Anfrage ist zu groß
<LI>Content-Length fehlt für POST- oder PUT-Anfragen
<LI>Ungültige Zeichen im Hostnamen - z.B. Unterstriche ('_'),
Umlaute und Kommata sind nicht erlaubt.
</UL>
</P>
<BR clear="all">
<HR noshade size="1px">
</BODY></HTML>
hab schon alles mögliche an einstellungen und so probiert aber ich komm einfach nicht drauf was ich noch machen muss dass das funktioniert...hat jemand eine idee?
ich versuche mit dem httpClient den Inhalt einer Webseite abzurufen. Mein bisheriger Code sieht so aus:
Java:
public static void main(String[] args) {
HttpClient httpclient = new DefaultHttpClient();
try {
Authenticator.setDefault(new ProxyAuthenticator("username", "password,"));
HttpGet httpget = new HttpGet("http://www.google.de/");
HttpHost proxy = new HttpHost("proxyname", port);
// handling response
HttpResponse response = httpclient.execute(proxy, httpget);
HttpEntity entity = response.getEntity();
System.out.println("----------------------------------------");
System.out.println(entity);
System.out.println("----------------------------------------");
File outFile = new File("file.txt");
OutputStream out = new FileOutputStream(outFile);
// entity.writeTo(out);
InputStream is = entity.getContent();
int n;
byte[] buffer = new byte[2048];
while((n = is.read(buffer)) != -1) {
out.write(buffer);
}
} finally {
// When HttpClient instance is no longer needed,
// shut down the connection manager to ensure
// immediate deallocation of all system resources
httpclient.getConnectionManager().shutdown();
}
}
}
ich bekomme dann allerdings immer folgendes:
<TITLE>FEHLER: Der angeforderte URL konnte nicht geholt werden</TITLE>
<HEAD> inhalt hab ich gelöscht
</HEAD><BODY>
<H1>FEHLER</H1>
<H2>Der angeforderte URL konnte nicht geholt werden</H2>
<HR noshade size="1px">
<P>
Während des Versuches, die Anfrage
<PRE>
GET / HTTP/1.1
:
Host: proxynameort
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.3 (java 1.5)
</PRE>
zu verarbeiten, trat der folgende Fehler auf:
<UL>
<LI>
<STRONG>Ungültige Anfrage</STRONG>
</UL>
<P>
Ein Teil der HTTP-Anfrage ist ungültig. Mögliche Gründe:
<UL>
<LI>Fehlende oder unbekannte Anfrage-Methode (GET, POST)
<LI>Fehlender URL
<LI>Fehlender HTTP Identifier (HTTP/1.0)
<LI>Anfrage ist zu groß
<LI>Content-Length fehlt für POST- oder PUT-Anfragen
<LI>Ungültige Zeichen im Hostnamen - z.B. Unterstriche ('_'),
Umlaute und Kommata sind nicht erlaubt.
</UL>
</P>
<BR clear="all">
<HR noshade size="1px">
</BODY></HTML>
hab schon alles mögliche an einstellungen und so probiert aber ich komm einfach nicht drauf was ich noch machen muss dass das funktioniert...hat jemand eine idee?