2012-12-18 82 views
0

我有一個應用程序,它與web服務連接。我發送Json的一些數據:看看看起來如何json

  try { 


      JSONObject jsonObject = new JSONObject(); 
      jsonObject.put("token", regId); 
      jsonObject.put("appId", GlobalConfig.getAPPLICATION_ID()); 
      jsonObject.put("phoneId", 1); 

      JSONArray jArrayParam = new JSONArray(); 
      jArrayParam.put(jsonObject); 

      List<NameValuePair> nameValuePair = new ArrayList<NameValuePair>(); 
      nameValuePair.add(new BasicNameValuePair("Token",jArrayParam.toString())); 

      HttpClient httpclient = new DefaultHttpClient(); 
      HttpPost httppost = new HttpPost(GlobalConfig.getSendEmail()); 
       httppost.addHeader("Authorization", "Basic " + Base64.encodeToString(
         (GlobalConfig.getAuthString()).getBytes(),Base64.NO_WRAP)); 
      httppost.setEntity(new UrlEncodedFormEntity(nameValuePair, HTTP.UTF_8)); 

      // Execute HTTP Post Request 
      HttpResponse response = httpclient.execute(httppost); 

     } catch (Exception e) { 
      // TODO: handle exception 
     } 

我怎樣才能看到如何看起來這個json? 我想服務器看到這樣的內容:

{"Token": [ 
{ 

"token": "asdasfasf", 

"appId": 8.8, 

"phoneId": 142.369, 

} 
+0

看到JSON在哪裏?在你的Android客戶端,或在服務器上? –

+0

你的例子json它無效 –

+0

我不明白的問題 – njzk2

回答

1

創建JSON對象爲:

JSONObject jsonObject = new JSONObject(); 
jsonObject.put("token", regId); 
jsonObject.put("appId", GlobalConfig.getAPPLICATION_ID()); 
jsonObject.put("phoneId", 1); 

JSONArray jArrayParam = new JSONArray(); 
jArrayParam.put(jsonObject); 

JSONObject finaljsonobj = new JSONObject(); 

finaljsonobj.put("Token", jArrayParam); 

現在finaljsonobj JSON對象看起來像是:

{ 
    "Token": [ 
    { 
     "token": "asdasfasf", 
     "appId": 8.8, 
     "phoneId": 142.369, 

    } 
    ] 
} 
0

使用JSON.stringify(json_object)

0

我們假設你的JSON實際上是有效的(它不是),並且你有一個功能完善的JSONObject。如果你想在控制檯中看到它,你只需要這樣做:

System.out.println(myAwesomeJSONObject.toString(2)); 

1表示縮進空格的數量。我喜歡2個縮進空間,但這是個人品味和可讀性的問題。