我正在使用Android Studio中的JSON从Blogger开发博客阅读器。我没有问题获取文章信息,但是如果我尝试获取nextPageToken则不起作用。
这是我的代码:
private void parseJSON(String url) {
JsonObjectRequest request = new JsonObjectRequest(Request.Method.GET, url, (String) null,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try {
String answer = response.getString("nextPageToken");
} catch (JSONException e) {
e.printStackTrace();
nextPageStr = "";
}
try {
JSONArray jsonArray = response.getJSONArray("items");
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
error.printStackTrace();
}
});
mRequestQueue.add(request);
}
我也尝试使用JSONObject而不是String,使用:JSONObject nextPageTokenObject = response.getJSONObject(“ nextPageToken”);
我使用的另一个选项是在第二个Try中使用if语句,以获取其余信息:
if (response.has("nextPageToken")){
System.out.println("Got next page!!");
String nextPageToken = response.getString("nextPageToken");
}
我得到的错误是:
W / System.err:org.json.JSONException:nextPageToken没有值
W / System.err:位于org.json.JSONObject.get(JSONObject.java:392)
JSON代码对nextPageToken来说是虚假的:
{
"kind": "blogger#postList",
"nextPageToken": "CgkIChiA8pj-0ywQ1_iv0tag1pUS",
"items": [
{"url": "http...",
"title": "some",
"content": "some"
(I erased this info because it was to long but all the info in items is working properly)
}
]
}
所以我尝试了这3个选项,但是错误是相同的,为什么它说为空?,如何从nextPageToken中获取信息?
非常感谢