Os dois métodos a seguir usarão o Java para enviar solicitações de URL e obter o valor retornado pelo servidor.
O primeiro método:
A cópia do código é a seguinte:
importar org.apache.http.httpentity;
importar org.apache.http.httpResponse;
importar org.apache.http.nameValuepair;
importar org.apache.http.client.httpclient;
importar org.apache.http.client.entity.urlencodedFormentity;
importar org.apache.http.client.methods.httppost;
importar org.apache.http.impl.client.defaulthttpClient;
importar org.apache.http.message.basicnameValuepair;
importar org.apache.http.params.coreConnectionPNames;
importar org.apache.http.util.entityutils;
publicStaticsTringSendurlRequest (Stringurlstr, StringParam1, StringParam2) ThrowSexception {
StringTempstr = null;
HttpClientHttpClient = newDefaULTHTTPCLIENT ();
PropriedadesProperties = newProperties ();
HttpentityEntity = null;
StringxmlContent = "";
tentar
{
// Defina o tempo de tempo limite
httpclient.getparams (). setIntParameter (coreConnectionPNames.Connection_Timeout, 20000);
httpclient.getparams (). setParameter (coreConnectionPNames.so_timeout, 20000);
// encapsulamento de parâmetros que precisam ser passados
Lista <NameValuepair> nvps = newArrayList <NameValuepair> ();
nvps.add (newbasicNameValuepair ("mainmemocode", strmainMemocode));
nvps.add (newbasicNameValuepair ("RecordPassword", strrecordPordword));
// Tipo de método de solicitação do cliente
HttppoThttpPost = newhttpPost (urlstr);
httppost.Setentity (newurlencodedFormentity (NVPS, "GBK"));
HttproSponsSponse = httpclient.execute (httppost);
// Obtenha o valor do tipo conteúdo de que o servidor retorna ao HTTP
tempstr = resposta.getheaders ("conteúdo-tipo") [0] .getValue (). ToString ();
// obtenha o valor da página retornada pelo servidor
entity = resposta.getEntity ();
xmlContent = entityutils.toString (entidade);
Stringstrmessage = nulo;
System.out.println (xmlContent);
System.out.println (Response.getheaders ("content-type") [0] .getValue (). ToString ());
httppost.abort ();
}
Catch (SockettimeoutException)
{
}
Catch (ExceptionEx)
{
Ex.PrintStackTrace ();
}
Finalmente{
httpclient.getConnectionManager (). Shutdown ();
}
O segundo método:
A cópia do código é a seguinte:
publicStaticsTringSendurlRequest (Stringurlstr, StringParam1, StringParam2) ThrowSexception {
HttpurlConnectionurl_con = null;
tentar{
Urlurl = newurl (urlstr);
StringBufferBankxMlBuffer = newsTringBuffer ();
// Crie conexão de URL, envie aos dados e obtenha o resultado de retorno
HttpurlConnectionConnection = (httpurlConnection) url.openconnection ();
Connection.SetRequestMethod ("Post");
Connection.SetDoOutput (true);
Connection.SetRequestProperty ("User-Agent", "DirectClient");
PrintWriterout = newPrintWriter (newOutputStreamWriter (Connection.getOutputStream (), "GBK"));
out.println (param);
out.Close ();
Bufferreaderin = newBufferedReader (newInputStreamReader (conexão
.getInputStream (), "GBK"));
StringInputLine;
while ((inputline = in.readline ())! = null) {
BankxmlBuffer.append (inputline);
}
in.Close ();
tempstr = bakxmlbuffer.toString ();
}
Catch (excepcione)
{
System.out.println ("Exceção ocorreu ao enviar solicitação Get!" +E);
E.PrintStackTrace ();
} finalmente{
if (url_con! = nulo)
url_con.disconnect ();
}
returnmpeST;
}