我需要发送一个数组GSON。 以下是在REST中请求外观的方法。
{
"session_id":"9658179abdcc29eb12cdb1a35f91a11a",
"list":[
"112",
"112"
]
}
这是我的代码:
JSONObject requestObject = new JSONObject();
requestObject.put("session_id", session_id);
requestObject.put("list", list);
return requestObject.toString();
其中list是ArrayList。
我收到错误:
Expected BEGIN_OBJECT but was STRING at line 8 column 1
我做错了什么? 对不起,我是GSON的新手。
答案 0 :(得分:0)
尝试:
return new Gson().toJson(requestObject);
而不是:
return requestObject.toString();
答案 1 :(得分:0)
我不明白你的问题。请更具体和明确。我假设您想使用Gson生成JSONArray,如:
{
"session_id":"9658179abdcc29eb12cdb1a35f91a11a",
"list":[
"112",
"112"
]
}
会是这样的:
final JsonObject jsonObject = new JsonObject();
jsonObject.addProperty("session_id", "9658179abdcc29eb12cdb1a35f91a11a");
final JsonArray jsonArray = new JsonArray();
jsonArray.add(new JsonPrimitive("112"));
jsonArray.add(new JsonPrimitive("112"));
jsonObject_MatchEventDiscussion.add("list", jsonArray);
注意: