2012-02-22 26 views
15

He oído que JSON serializa todos los datos, lo que me impide tener problemas con el cliente en términos de compatibilidad entre navegadores, etc.¿Cuál es la diferencia entre JSON y AJAX con jQuery?

He estado usando AJAX con jQuery y parece fácil, pero me ' estoy seguro de las diferencias,

he leído también puedo usar esto para obtener los datos:

$.ajax({ 
    url: url, 
    dataType: 'json', 
    data: data, 
    success: callback 
}); 

puede alguien explicar la diferencia entre hacer una solicitud jQuery AJAX usando JSON y hacer una petición AJAX jQuery sin el tipo json?

¿La respuesta será correcta para todos los navegadores?

+3

Solo use 'dataType: 'json'' si la respuesta debe interpretarse como JSON. Usar el tipo de datos 'json' para, digamos, html no es sabio. –

+0

Obtiene puntos por respuestas, Rob;) –

+0

, pero ¿qué ocurre si necesito devolver un objeto? es básicamente la respuesta de una consulta de base de datos ... ¿es mejor usar json o solo jquery? – jpganz18

Respuesta

28

Creo que está confundiendo los términos.

AJAX significa A síncrono J avascript un ML nd X, que es un mecanismo que se utiliza para poner en marcha las solicitudes HTTP asíncronos a un servidor utilizando JavaScript. No dejes que el nombre te engañe; no hay restricciones para que solo recupere JavaScript o XML de esta técnica. También puede devolver fácilmente otros formatos de datos (HTML, texto plano y JSON, para enumerar algunos).

JSON es solo uno de estos formatos. Es un formato de intercambio de datos, donde, como AJAX es una técnica para comunicarse con un servidor después de, se ha completado la carga de la página initate.

Para responder a su pregunta sobre si necesita especificar el dataType; jQuery adivinará mejor el formato de respuesta (ya sea HTML o JSON, etc.), por lo que normalmente puede omitirlo.

4

La opción dataType simplemente cambia qué tipo de datos debe esperar jquery del servidor. Puede ser json, jsonp, html, text, xml, o cualquier tipo de datos personalizados para los que defina un convertidor. Todos funcionan en todos los navegadores.

De forma predeterminada, jQuery intentará detectar qué tipo de datos se devuelve si no proporciona una opción dataType, pero creo que no se detecta muy bien automáticamente.

Editar:

pero lo que si tengo que devolver un objeto? es básicamente la respuesta de una consulta de base de datos ... ¿es mejor usar json o solo jquery?

Usted puede devolver un objeto en forma de html, xml, json, o jsonp. Siempre que esté en uno de esos formatos, jQuery podrá interpretarlo.

0

JQuery: Es una biblioteca ligera de Javascript.

JSON - Sobres para notación de objetos de JavaScript.

Jquery: Se crea utilizando JavaScript y estará utilizando las funciones incorporadas de la biblioteca.

Json: JSON es un formato de texto que es completamente independiente del idioma.

jQuery: Es una biblioteca rápida y minified JavaScript que simplifica el documento HTML de desplazamiento, manejo de eventos, animación, y las interacciones Ajax para el desarrollo web rápido. jQuery está diseñado para cambiar la forma en que escribes JavaScript.

Json: Si quiere asignar datos a su grilla, entonces es posible con Json.

Cuestiones relacionadas