Saltar al contenido

com.android.volley.ParseError: org.json.JSONException

Solución:

Si desea recibir el resultado como una cadena, no use JSONRequest. Vaya con la clase de solicitud simple. Su problema es bastante simple: el servidor está devolviendo un JSONArray con solo un elemento dentro. Un JSONArray no es un JSONObject. Es por eso que falla el análisis.

Tenemos que usar JsonArrayRequest en lugar de JsonObjectRequest. El código como:

    RequestQueue queue = Volley.newRequestQueue(this);

    final String url = "http://192.168.88.253/mybazar/get_product_list.php";

    // prepare the Request
    JsonArrayRequest getRequest = new JsonArrayRequest(Request.Method.GET, url, null,
            new Response.Listener<JSONArray>()
            {
                @Override
                public void onResponse(JSONArray response) {
                    // display response
                    Log.d("Response", response.toString());
                }
            },
            new Response.ErrorListener()
            {
                @Override
                public void onErrorResponse(VolleyError error) {
                    Log.d("Error.Response", error.toString());
                }
            }
    );



    // add it to the RequestQueue
    queue.add(getRequest);

Espero que resuelva el problema.

Me di cuenta de que hay una clase JsonArrayRequest compatible con volley, así que uso esta clase y el problema se resolvió, estaba usando JsonObjectRequest

https://android.googlesource.com/platform/frameworks/volley/+/43950676303ff68b23a8b469d6a534ccd1e08cfc/src/com/android/volley/toolbox

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *