我有一个与网络服务相关的应用。我发送了一些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 :(得分: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,
}
]
}
答案 1 :(得分:0)
使用JSON.stringify(json_object)
。
答案 2 :(得分:0)
让我们假设您的JSON实际上是有效的(它不是),并且您拥有功能完善的JSONObject。如果你想在控制台中看到它,你只需要这样做:
System.out.println(myAwesomeJSONObject.toString(2));
1表示缩进空格的数量。我喜欢它有2个缩进空格,但这是个人品味和可读性的问题。