Cómo ejecutar solicitudes de publicación http en android
HTTP POST es parte de las clases HTTP en desuso como org.apache.http y androidhttpclient a de Android 5.1. Migre su código a las clases de httpurlconnection que incluye la funcionalidad de publicación.HTTP POST se usa en Java para solicitar que un servidor web específico reciba y almacene datos enviados dentro de un formulario de solicitud. Los datos se envían y almacenan en pares de valor. Ejemplos de pares incluyen: correo electrónico: su dirección de correo electrónico: nombre de usuario: su nombre de usuario y contraseña: su contraseña.
Pasos
Parte 1 de 2:
Creando un bloque de prueba y un objeto httpurlconnection1. Agregue permisos de Internet al manifiesto de Android. El manifiesto de Android es un archivo XML que proporciona información importante al sistema Android que determina la compatibilidad del dispositivo y el acceso a las características. En el "Androidmanifest.XML "Archivo, ingrese la siguiente línea para proporcionar acceso a Internet.
Android: Nombre ="androide.permiso.INTERNET" />
2. Crear un bloque de prueba. En Java, una declaración de prueba es un manejador de excepciones que evitará que el programa se bloquee si no puede realizar una acción. Debido a que esto requerirá una conexión a una ubicación de red, una declaración de prueba captará una excepción si no puede establecer una conexión. Puedes agregar esto a un nuevo método Java.
intente {// ingrese las declaraciones que pueden causar excepciones}
3. Construye httpurlconnection y objetos de url. Java es un idioma orientado a objetos. Un objeto está compuesto por estados y comportamientos, que es una instancia de una clase. El objeto HttpurlConnection envía y recibe datos a través de Internet. En su código, comience su nuevo método creando un objeto URL y asigne una URL para que el objeto HTTPURLCONEPETEP.
URL URL = nueva URL ("http: // exampleurl.COM / ") - HTTPURLCONNECTION CLIENT = (httpurlconnection) URL.OpenConnection ()-
URL URL = nueva URL ("http: // exampleurl.COM / ") - HTTPURLCONNEPTORIENTE CLIENT = NULL-TRYT {Client = (httpurlconnection) URL.opennconnection () -}
Parte 2 de 2:
Publicar la solicitud de salida y manejo de excepciones1. Establecer el método de solicitud para publicar. Para enviar información al servidor, debe configurar el tipo de objeto HttpurlConnection para publicar y configurar la salida en VERDADERO usando SetDoOutput (). Use la función SetRequestProperty () para configurar una propiedad de solicitud general que requiera dos elementos, una clave con una solicitud conocida del servidor y un valor que está contenido dentro de la clave correspondiente.
- La función SetRequestProperty () se usa como el encabezado de la solicitud de codificación de aceptación para deshabilitar la descompresión automática.
cliente.SetRequestMethod ("POST") - Cliente.SetRequestProperty ("Clave", "Valor") - Cliente.setdoutput (verdadero)-
2. Salga de la corriente al servidor. Debe solicitar la transmisión de salida del servidor para poder escribir en el flujo de salida, o publicar, luego al ras y cierre la secuencia cuando haya terminado.
OutputStream Outputpost = NUEVO BUFFERADO SOCIEDUPTREAM (CLIENTE.GetOutputStream ()) - Writestream (Outputpost) -OutputPost.Flush () - Outputpost.cerca()-
cliente.setfixedlengthstreamingmode (Outputpost.getbytes ().longitud) -client.SetchunkedStreamingMode (0)-
3. Coger cualquier excepción. Después de la declaración de intento, use el bloque de captura para verificar una excepción para la entrada y salida con IOException, atrape un error de URL con la excepción de Malformedurl y verifique si la URL no proporciona una respuesta en el tiempo con la SocketTimeOutException.
Captura (error de la concepción de MalformedurException) {// maneja una cobertura de URL} AUL} (SocketTimeOutException Error) {// maneja Tiempo de espera de acceso de URL.} captura (error de IoException) {// maneja errores de entrada y salida}
4. Desconectar de la URL. Después de que haya terminado con su conexión URL, deberá desconectarse de la URL. Asegúrese de verificar que está conectado a una URL antes de intentar desconectarse.
Finalmente {if (cliente != nulo) // asegúrese de que la conexión no sea nula.cliente.desconectar()-}
Consejos
Cosas que necesitarás
- Java IDE
- Herramientas de desarrollo de Android (SDK, Emulator, etc.)
- Teléfono de Android Desarrollador u otro dispositivo Android Powered (opcional para pruebas)
- Conexión a Internet (para pruebas)