Tengo un poco de experiencia en JSON. Lo hice en mi aplicación de Android y ahora uso JSON nuevamente en mi página web como respuesta de AJAX. Investigué sobre ajax y encontré un tutorial para obtener mis datos en la base de datos usando JSON, así que lo intenté pero no lo hice. saber cómo analizar el objeto.
Mi código Jquery.
$.ajax({ type: 'GET', dataType: 'json', url: 'functions/json.php', success: function(response){ var json = $.parseJSON(response); alert(json.firstname) //where my response is $response['firstname'] }, error: function(data){ var json = $.parseJSON(data); alert(json.error); } });Usando php, hago eco de jsonArray como json_encode y aquí está la salida json
{"id":"2","firstname":"john","lastname":"Doe"}usando la consola de google chrome tengo este error
Uncaught SyntaxError: Unexpected token o in JSON at position 1 at JSON.parse (<anonymous>)cuando la salida de respuesta de la función como salida de alerta (respuesta) fue
[object Object]No lo analices. Le has dicho a jQuery que:
dataType: "json" Entonces, la response es el objeto analizado , no JSON. Solo úsalo directamente:
$.ajax({ type: 'GET', dataType: 'json', url: 'functions/json.php', success: function(response){ alert(response.firstname); }, error: function(data) { // `data` will not be JSON } }); También tenga en cuenta que el primer parámetro de la devolución de llamada de error no será JSON ni el resultado de analizar JSON en la devolución de llamada de error.
Consulte la documentación para obtener más detalles.