Android 无法读取jsonp输出

Android 无法读取jsonp输出,android,Android,Android代码 HttpClient httpClient = new DefaultHttpClient(); HttpPost httpPost = new HttpPost( "http://192.168.1.104/Ceylon_Steel/service/getCategoriesAndItems"); ResponseHandler<String> res

Android代码

HttpClient httpClient = new DefaultHttpClient();
                HttpPost httpPost = new HttpPost(
                        "http://192.168.1.104/Ceylon_Steel/service/getCategoriesAndItems");
                ResponseHandler<String> responseHandler = new BasicResponseHandler();
                String responseBody = httpClient.execute(httpPost, responseHandler);
                JSONObject posts = new JSONObject(responseBody);
                JSONArray jArray = posts.getJSONArray("categories");
                Log.i("Tag", jArray.toString());
在这里,我尝试了上面的代码从json中检索数据并将其打印到日志中,但我尝试了以下错误

12-06 10:11:38.578: W/System.err(3695): org.json.JSONException: Value categories_and_items of type java.lang.String cannot be converted to JSONObject

我认为json是无效的

什么是

categories_and_items( ... )

您的JSON响应无效。它应该总是以
{…}
括号开始,而不是以
(..)
括号开始

如有可能,通过删除以下括号来更改您的回答:

categories_and_items{
    categories: [
        {
            id: "c2",
            item: [
                {
                    itemId: "9",
                    itemCode: "FG039062",
                    description: "E1-LINER 38x26-R: NAKAYAMA NCF-2B IMPACT CHUSHER",
                    price: "0.00",
                    quantity: "100000"
                },

            ]
        },

    ]
}

这不是有效的JSON字符串。您可以在这里检查:类别和项目(..)您正在添加此项或您正在从服务器获取此项…??我从服务器获取它您需要更改您的响应。它不可能解析为无效。实际上它是一个jsnop。categories_和_items是回调名称Check out实际上我可以使用Jquery从服务器获取该值json,而不给出任何错误。您可能正在获取该值,但您将无法使用JSONObject解析它,因为它实际上是无效的json格式。
categories_and_items{
    categories: [
        {
            id: "c2",
            item: [
                {
                    itemId: "9",
                    itemCode: "FG039062",
                    description: "E1-LINER 38x26-R: NAKAYAMA NCF-2B IMPACT CHUSHER",
                    price: "0.00",
                    quantity: "100000"
                },

            ]
        },

    ]
}