Possiamo costruire il formato JSON sopra utilizzando classe JsonObject che è disponibile con javax.json-1.0.2.jar,
JsonObject jo = Json.createObjectBuilder()
.add("data", 2376845)
.add("data2", 12545)
.add("array",Json.createArrayBuilder()
.add(Json.createObjectBuilder().add("data3", "2013-01-10").add("data4", 23532).build())
.add(Json.createObjectBuilder().add("data3", "2013-01-11").add("data4", 523526).build()))
.build();
Dopo aver costruito formato JSON
AsyncHttpClient client=new AsyncHttpClient();
Request request = client.preparePost(your host URL).
setHeader("Content-Type","application/json").
setHeader("Content-Length", ""+jo.toString().length()).setHeader("Authorization","Basic fgfgfgfhfhtetet=").
setBody(jo.toString()).build();
ListenableFuture<Response> r = null;
//ListenableFuture<Integer> f= null;
try{
r = client.executeRequest(request);
System.out.println(r.get().getResponseBody());
}catch(IOException e){
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}
se richiesto di base autenticazione è necessario aggiungere una chiave che è la combinazione di nome utente: password codificata con base64 all'intestazione, se non lasciarlo in questo caso l'ho aggiunto all'intestazione
per lo più questo sarà il lavoro per voi di
Nota: AsyncHttpClient, classi ListenableFuture sono disponibili in async-http-client-1.7.5.jar
Partenza http://stackoverflow.com/questions/6218143/android- post-json-using-http –