Red de conocimiento informático - Conocimiento sistemático - El código fuente es un dolor de cabeza. ¿Hay algún experto en la clase HttpURLConnection en Java?

El código fuente es un dolor de cabeza. ¿Hay algún experto en la clase HttpURLConnection en Java?

Se recomienda utilizar el marco httpclient, que es mucho mejor que HttpURLConnection. A continuación se muestra un ejemplo de una solicitud:

Pasar parámetros en 1. Modo obtención

//Primero coloque los parámetros en la lista y luego codifique los parámetros en la URL.

Lista & ltBasicNameValuePair & gtparams = new LinkedList & ltBasicNameValuePair & gt();

Parámetros. add(nuevo par de valores de nombre básico(" parámetro 1 ", " datos ")); //Agregar parámetro 1

params add(nuevo par de valores de nombre básico(" parámetro 2 ", " valor 2 " )); //Agregar parámetro 2

string param = urlencodedutils. format(params, "UTF-8"); //Parámetros de codificación

String baseUrl = "URL de interfaz de servidor completa ";

http get get método = new http get(base URL+"?"+param); // Empalme URL con parámetros.

cliente http cliente http = nuevo cliente http predeterminado();

Pruebe {

Respuesta HTTP = cliente http ejecutar (obtener método); GET solicitud

Log.i(TAG," resCode = "+response.getstatusline().getStatusCode());//Obtener el código de respuesta

Log.i(TAG, " result = "+entity utils . tostring(response . getentity()," utf-8 "));//Obtener el contenido de la respuesta del servidor

} catch(clientprotocoleexception e){

e . printstacktrace();

} captura (IOException e) {

e . 2. Pase los parámetros en modo de publicación.

//Igual que el método GET, primero coloque los parámetros en la lista.

params = new LinkedList & ltBasicNameValuePair & gt();

params . add(new basic name value pair(" parámetro 1 ", " método de publicación ")); Parámetro 1

Parámetro. add(new basic name value pair(" parámetro 2 ", "segundo parámetro")); //Agregar parámetro 2

Pruebe {

método http post post = new http post( URL base);//Crear una solicitud de publicación

método de publicación. setentity(new UrlEncodedFormEntity(params, "utf-8"));//Complete los parámetros en la entidad POST.

Respuesta HttpResponse = cliente http. ejecutar(método de publicación); //Ejecutar método POST

Log.i(TAG, " resCode = "+respuesta. getstatusline(). getStatusCode( )); //Obtener el código de respuesta

Log.i(TAG, " result = "+entity utils . tostring(response . getentity(), " utf-8 ")); contenido de respuesta

} catch(UnsupportedEncodingException e){

e . printstacktrace()

} catch(clientprotocoleexception e){

e . printstacktrace();

} captura (IOException e) {

e .