¿Cómo configuro el cuerpo de un HttpPut en Android? (sin agregar bibliotecas)

Quiero subir algunos datos de una aplicación de Android a Pachube.

[Actualización: Para la gente leyendo esto en 2013, "Pachube" se convirtió en "Cosm", que ahora es "Xively".]

Este lanzamiento es proporcionado por su documentación como un ejemplo.

¿Cómo puedo lograr esto con la implementación de HttpPut (o HttpPost) de Android?

Realmente no quiero tener que agregar bibliotecas adicionales, ya que quiero mantener la aplicación lo más pequeña posible.

Ya tengo un JSONObject con mis datos en él.

2 Solutions collect form web for “¿Cómo configuro el cuerpo de un HttpPut en Android? (sin agregar bibliotecas)”

Aquí hay un pseudocódigo. Tenga en cuenta que no debe enviar datos url codificados formulario en una solicitud PUT, ya que puede romper servidor OAuth (si se utiliza):

HttpClient client = new DefaultHttpClient(); HttpPut put = new HttpPut(url); put.addHeader("Content-Type", "application/json"); put.addHeader("Accept", "application/json"); put.setEntity(new StringEntity(jsonObj.writeValue())); HttpResponse response = client.execute(put); 

Una forma de hacerlo en Java / Android sin bibliotecas adicionales es:

 URL url = new URL("http://www.example.com/whatever"); HttpURLConnection httpCon = (HttpURLConnection) url.openConnection(); httpCon.setDoOutput(true); httpCon.setRequestMethod("PUT"); OutputStreamWriter out = new OutputStreamWriter(httpCon.getOutputStream()); out.write("Data you want to put"); // for example your JSON object out.close(); 

ACTUALIZACIÓN – según los comentarios:

puede obtener la respuesta por ejemplo llamando httpCon.getInputStream() y / o httpCon.getErrorStream() etc.

  • Cómo agregar TableRow de xml a TableLayout mediante programación?
  • IntelliJ IDEA con Junit 4.7 "!!! JUnit versión 3.8 o posterior esperado: "
  • NullPointerException en FragmentManager
  • Actualizado a AppCompat v22.1.0 y ahora obtener "eliminar atributo" error
  • ¿Por qué SQLException no captura SQLiteExcpetion?
  • Realización de tareas de fondo - ¿alternativa a AsyncTask?
  • Sistema de huellas dactilares en Java
  • OnCancelListener no se llama en DialogFragment
  • Ocultar clases de biblioteca - Android
  • Donde colocar el bucle del juego principal en el juego Android
  • Integra la aplicación con el sitio web social de primavera
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.