O httpclient usa o método de post para enviar o código -fonte de dados:
A cópia do código é a seguinte:
postagem de pacote;
importar java.io.ioException;
importar org.apache.commons.httpclient.header;
importar org.apache.commons.httpclient.httpclient;
importar org.apache.commons.httpclient.httPexception;
importar org.apache.commons.httpclient.httpstatus;
importar org.apache.commons.httpclient.namevaluepair;
importar org.apache.commons.httpclient.methods.postMethod;
classe pública posthttp {
/**
* @param args
*/
public static void main (string [] args) {
// TODO Method Stub
HttpClient httpClient = new HttpClient ();
String url = "http://193.167.13.21/setup.cgi";
Pós -metódico postmethod = novo PostMethod (URL);
// preencha os valores de cada campo de formulário
NameValuepair [] dados = {
new NameValuepair ("id", "11"),
new NameValuepair ("Mtg", "0"),
new NameValuepair ("Havecookie", "0"),
new NameValuepair ("backId", "30"),
new NameValuepair ("PSW", "Senha")
};
// coloca o valor do formulário no pós -mete
postmethod.setRequestbody (dados);
// Execute o PostMethod
int statusCode = 0;
tentar {
statusCode = httpclient.executemethod (postmethod);
} catch (httPexception e) {
// TODO BLOCO DE CAPAGEM AUTOMAGEM
E.PrintStackTrace ();
} catch (ioexception e) {
// TODO BLOCO DE CAPAGEM AUTOMAGEM
E.PrintStackTrace ();
}
// httpclient não pode lidar automaticamente em encaminhamento para solicitações que requerem serviços subsequentes, como postagem e put.
// 301 ou 302
if (statuscode == httpstatus.sc_moved_permanly || statuscode == httpstatus.sc_moved_temporariamente)
{
// retire o endereço da direção desde o início
Localização do cabeçalho = PostMethod.GetResponseHeader ("Localização");
String Location = NULL;
if (locationheader! = null) {
Localização = LocationHeader.getValue ();
System.out.println ("A página foi redirecionada para:" + localização);
}
outro {
System.err.println ("O valor do campo de localização é nulo.");
}
retornar;
}
outro
{
System.out.println (postmethod.getStatusline ());
String str = "";
tentar {
str = postmethod.getResponseBodyasstring ();
} catch (ioexception e) {
// TODO BLOCO DE CAPAGEM AUTOMAGEM
E.PrintStackTrace ();
}
System.out.println (str);
}
postmethod.releasEConnection ();
retornar ;
}
}
// Esta é a informação de login de um processo de autenticação de usuário
O pacote de jar exigido:
1. Commons-httpclient-3.1-rc1.zip http://jakarta.apache.org/commons/httpclient/downloads.html
2. Commons-codec-1.3.jar http://jakarta.apache.org/site/downloads/downloads_commons-codec.cgi
3. Commons-logging-api.jar no diretório Tomcat 5.5/bin em tomcat5.5 ou http://jakarta.apache.org/site/downloads/downloads_coMmons-logging.cgi