La copie de code est la suivante:
Importer java.io.bufferedReader;
Importer java.io.ioException;
import java.io.inputStream;
Importer java.io.inputStreamReader;
import org.apache.commons.httpclient.defaulthTTPMethoDretryHandler;
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;
classe publique TestHttpClient {
public static void main (String [] args) {
// Talage de méthode générée automatiquement de TODO
// définir une instance de httpclient
HttpClient httppClient = new httpclient ();
// Créer une instance de la méthode GET
GetMethod getMethod = new GetMethod ("http://vevb.com");
// utilise la politique de récupération par défaut fournie par le système
//GetMethod.getParams().SetParameter(httpMethodParams.retry_handler, new defaulthTTPMethoDretryHandler ());
// Créer une instance de méthode postale
PostMethod PostMethod = new UTF8PostMethod ("http://vevb.com");
//
//// Remplissez les valeurs de chaque champ de formulaire
// nameValuepair [] data = {new nameValuepair ("user_name", "user_name"), new nameValuepair ("mot de passe", "mot de passe")};
//
//// Mettez la valeur du formulaire dans la méthode post
//postMethod.setRequestbody(data);
//
//postMethod.getParams (). SetParameter (
//"http.protocol.cookie-policy",cookiepolicy.browser_compatibilité);
//postMethod.SetRequestHeader("Referrer "," http://vevb.com ");
essayer{
// Exécuter la méthode GET
// int statuscode = httpclient.execUpeMethod (getMethod);
// Exécuter la méthode post
int statuscode = httpclient.execureMethod (postMethod);
if (statuscode == httpstatus.sc_moved_temporly) {
En-tête localisationheader = postMethod.getResponseHeader ("emplacement");
Emplacement de la chaîne = null;
if (emplacementheader! = null) {
location = locationHeader.getValue ();
}
postMethod = new postMethod (emplacement);
PostMethod.SetRequestHeader ("référente", "http://vevb.com/login");
NameValuepair [] data1 = {new nameValuepair ("user_name", "user_name"), new nameValuepair ("mot de passe", "mot de passe")};
postMethod.setRequestbody (data1);
postMethod.getParams (). SetParameter (
"http.protocol.cookie-policy", cookiepolicy.browser_compatibilité);
int statuscode1 = httpclient.execUpeMethod (postMethod);
if (statuscode1! = httpstatus.sc_ok) {
System.out.println ("La méthode est erronée" + postMethod.getStatusline ());
}
}
if (statuscode! = httpstatus.sc_ok) {
System.out.println ("La méthode est erronée" + postMethod.getStatusline ());
}
InputStream ResponseBody = postMethod.getResponseBodyAssstream ();
BufferedReader Reader = new BufferedReader (new InputStreamReader (réponse, "UTF-8"));
String Line = Reader.Readline ();
while (line! = null) {
System.out.println (new String (line.getBytes ()));
line = reader.readline ();
}
}
catch (httpexception e) {
// TODO: gérer l'exception
System.out.println ("Veuillez vérifier votre adresse HTTP fournie!");
e.printStackTrace ();
} catch (ioexception e) {
// TODO: gérer l'exception
System.out.println ("La ligne est erronée!");
e.printStackTrace ();
} enfin{
getMethod.releaseconnection (); // Libérez le lien
postMethod.releaseconnection ();
}
}
// classe intérieure pour le support UTF-8
classe statique publique UTF8PostMethod étend post-méthode {
public utf8PostMethod (URL de chaîne) {
super (url);
}
@Outrepasser
String public getRequestCharset () {
// return super.getRequestCharset ();
retourner "UTF-8";
}
}
}