Die Codekopie lautet wie folgt:
Import Java.io.BufferedReader;
importieren java.io.ioException;
importieren java.io.inputstream;
importieren java.io.inputStreamReader;
import org.apache.commons.httpclient.defaushttpMethodryHandler;
import org.apache.commons.httpclient.header;
import org.apache.commons.httpclient.httpclient;
import org.apache.commons.httpclient.httpexception;
import org.apache.commons.httpclient.httpstatus;
import org.apache.commons.httpclient.namevaluepair;
import org.apache.commons.httpclient.cookie.cookiepolicy;
import org.apache.commons.httpclient.methods.getmethod;
import org.apache.commons.httpclient.methods.postMethod;
import org.apache.commons.httpclient.params.httpMethodparams;
öffentliche Klasse testhttpclient {
public static void main (String [] args) {
// Todo automatisch generierte Methode Stub
// eine Instanz von httpclient definieren
Httpclient httppclient = new httpclient ();
// Erstellen Sie eine Instanz der GET -Methode
GetMethod getMethod = new getMethod ("http://vevb.com");
// Verwenden Sie die vom System bereitgestellten Standard -Wiederherstellungsrichtlinie
//getMethod.getParams().setparameter(httpMethodparams.retry_handler, New DefaulthttpMethodryHandler ());
// Erstellen Sie eine Post -Methode -Instanz
PostMethod postMethod = new utf8postMethod ("http://vevb.com");
//
//// die Werte jedes Formularfelds ausfüllen
// nameValuepair [] data = {new nameValuePair ("user_name", "user_name"), neuer nameValuepair ("Passwort", "Passwort")};
//
//// den Wert des Formulars in die Post -Methode einlegen
//postMethod.setRequestBody(data);
//
//postMethod.getParams (). SetParameter (
//"http.protocol.cookie-policy"
//postMethod.setRequestheader("Referer "," http://vevb.com ");
versuchen{
// Führen Sie die GET -Methode aus
// int statusCode = httpclient.executemethod (getMethod);
// Führen Sie die Post -Methode aus
int statuscode = httpclient.executemethod (postmethod);
if (statuscode == httpstatus.sc_moved_temporär) {
Header locationHeader = postmethod.getResponseHeader ("Ort");
String location = null;
if (locationHeader! = null) {
location = locationHeader.getValue ();
}
postmethod = new postmethod (Ort);
postMethod.setRequestheader ("Referer", "http://vevb.com/login");
NameValuePair [] data1 = {new nameValuePair ("user_name", "user_name"), neuer nameValuePair ("Passwort", "Passwort")};
postmethod.setRequestbody (data1);
postmethod.getParams (). SetParameter (
"http.protocol.cookie-policy", Cookiepolicy.Browser_Compatibilität);
int statuscode1 = httpclient.executemethod (postmethod);
if (statusCode1! = httpstatus.sc_ok) {
System.out.println ("Methode ist falsch" + postmethod.getStatusline ());
}
}
if (statuscode! = httpstatus.sc_ok) {
System.out.println ("Methode ist falsch" + postmethod.getStatusline ());
}
InputStream ResponseBody = postmethod.getResponseBodyAssTream ();
BufferedReader Reader = New BufferedReader (neuer InputStreamReader (ResponseBody, "UTF-8");
String line = reader.readline ();
while (line! = null) {
System.out.println (neue String (line.getBytes ()));
line = reader.readline ();
}
}
catch (httpexception e) {
// TODO: Ausnahme behandeln
System.out.println ("Bitte überprüfen Sie Ihre bereitgestellte HTTP -Adresse!");
E. printstacktrace ();
} catch (ioException e) {
// TODO: Ausnahme behandeln
System.out.println ("Die Linie ist falsch!");
E. printstacktrace ();
} Endlich{
GetMethod.ReleasConnection (); // den Link freigeben
postmethod.releaseconnection ();
}
}
// Innere Klasse für UTF-8-Unterstützung
öffentliche statische Klasse UTF8PostMethod erweitert sich nach dem Methode {
public UTF8PostMethod (String url) {
Super (URL);
}
@Override
public String getRequestCharset () {
// return Super.getRequestCharset ();
zurück "utf-8";
}
}
}