Comment diffuser un objet JSON pour un HttpURLConnection requête POST

Je ne vois pas quel est le problème avec ce code:

JSONObject msg;  //passed in as a parameter to this method

HttpURLConnection httpCon = (HttpURLConnection) url.openConnection();
httpCon.setDoOutput(true);
httpCon.setDoInput(true);
httpCon.setUseCaches(false);
httpCon.setRequestProperty( "Content-Type", "application/json" );
httpCon.setRequestProperty("Accept", "application/json");
httpCon.setRequestMethod("POST");
OutputStream os = httpCon.getOutputStream();
OutputStreamWriter osw = new OutputStreamWriter(os, "UTF-8");
msg.write(osw);
osw.flush();
osw.close();    
os.close();     //probably overkill

Sur le serveur, je suis pas publier de contenu à tous, une chaîne de longueur zéro.

Je sais que cela semble étrange, mais le JSONObject classe a une méthode d'écriture qui vous passez un objet Writer, et la classe écrit lui-même dans le flux. C'est beaucoup plus efficace que la conversion d'une chaîne, puis l'écriture de la chaîne. Qui n'a pas vraiment faire une différence dans cette situation, nous pourrions vapeur rien à l'Écrivain et le test est le même. L'erreur est sur la connexion.

OriginalL'auteur AgilePro | 2014-02-23