[Enciclopedia Online Gratuita] Diccionario de Internet y Tecnologías de la Información y la Comunicación (TIC):
ıllı JSON wiki: info, historia y vídeos
- Detalles
- Categoría: INTERNET
JSON
JSON, acrónimo de JavaScript Object Notation, es un formato de texto ligero para el intercambio de datos. JSON es un subconjunto de la notación textual de objetos de JavaScript si bien el día de hoy, debido a su extensa adopción como opción alternativa a XML, se considera un formato de lenguaje independiente. Una de las presuntas ventajas de JSON sobre XML como formato de intercambio de datos es que es considerablemente más fácil redactar un analizador sintáctico (parser) de JSON. En JavaScript, un texto JSON se puede examinar de forma fácil utilizando la función eval(), lo que ha sido esencial a fin de que JSON haya sido admitido por la parte de la comunidad de desarrolladores AJAX, debido a la omnipresencia de JavaScript en prácticamente cualquier navegador. En la práctica, los razonamientos en favor de la sencillez de desarrollo de analizadores o bien de sus rendimientos son poco relevantes, debido a las cuestiones de seguridad que plantea el empleo de eval() y el apogeo del procesamiento nativo de XML incorporado en los navegadores modernos. Por esa razón, JSON se emplea frecuentemente en ambientes donde el tamaño del flujo de datos entre usuario y servidor es de vital relevancia (de acá su empleo por Yahoo, Google, etcétera que atienden a millones de usuarios) cuando la fuente de datos es explícitamente de fiar y donde no es esencial el no contar con de procesamiento XSLT para manipular los datos en el cliente del servicio. Si bien es usual ver JSON posicionado contra XML, asimismo es usual el empleo de JSON y XML en exactamente la misma aplicación. Por servirnos de un ejemplo, una aplicación de cliente del servicio que integra datos de Google Maps con datos meteorológicos en SOAP hacen preciso aguantar los dos formatos. En diciembre de dos mil cinco Yahoo! empezó a dar soporte opcional de JSON en ciertos de sus servicios web. Ni Yahoo, ni Google emplean JSON, sino más bien LJS Una de las cualidades intrínsecas de Javascript llamada LJS (Textual Javascript) facilita el flujo de datos e inclusive de funciones, para la que no requiere la función eval() si son datos los que se trasfieren como en el caso de XML. Todo lo que respecta al trasferencia de datos en sus tipos, incluyendo arrays, booleans, integers, etcétera no precisan de la función eval() y es exactamente en eso en donde supera por mucho JavaScript al XML, si se usa el LJS y no la incorrecta definición de JSON. Al ser JSON un formato muy extendido para el intercambio de datos, se han desarrollado API para diferentes lenguajes (por poner un ejemplo ActionScript, C, C++, C#, ColdFusion, Common Lisp, Delphi, Y también, Eiffel, Java, JavaScript, ML, Objective-C, Objective CAML, Perl, PHP, Python, Rebol, Ruby, Lua y Visual FoxPro) que dejan examinar sintácticamente, producir, convertir y procesar esta clase de dato. Los modelos de programación más empleados para tratar con JSON en los diferentes lenguajes son: En teoría, es trivial examinar JSON en JavaScript utilizando la función JSON.parse() incorporada en el lenguaje. Por ejemplo: En la práctica, las consideraciones de seguridad generalmente aconsejan no utilizar eval sobre datos crudos y debería utilizarse un analizador JavaScript diferente para asegurar la seguridad. El analizador proporcionado por JSON.org utiliza eval() en su función de análisis, resguardándola con una expresión regular de manera que la función solo ve expresiones seguras. Un ejemplo de acceso a datos JSON utilizando XMLHttpRequest es: Obsérvese que el empleo de XMLHttpRequest en este caso de ejemplo no es compatible con todos y cada uno de los navegadores, puesto que existen alteraciones sintácticas para IE, Opera, Safari, y navegadores basados en Mozilla Firefox. También es posible utilizar elementos Hay una biblioteca para el framework .NET que exporta clases .NET con la sintaxis de JSON para la comunicación entre usuario y servidor, en los dos sentidos. XML disfruta de mucho menor soporte y ofrece menos herramientas de desarrollo (tanto en el lado del cliente del servicio como en el lado del servidor). Existen muchos analizadores JSON en el lado del servidor, existiendo cuando menos un analizador para la mayor parte de los ambientes.En ciertos lenguajes, como Java o bien PHP, hay diferentes implementaciones donde seleccionar. En JavaScript, el análisis es posible de forma nativa con la función JSON.parse(). Los dos formatos carecen de un mecanismo para representar grandes objetos binarios. Con independencia de la comparación con XML, JSON puede ser realmente sólido y eficaz si se utiliza de forma eficaz. Por poner un ejemplo, la aplicación DHTML de busca en «BarracudaDrive»(en inglés). Archivado desde el original el veintiuno de mayo de dos mil seis. recibe los listados de directorio como JSON desde el servidor. Esta aplicación de busca está de forma permanente consultando al servidor por nuevos directorios, y es de manera notable veloz, aun sobre una conexión lenta. Los ambientes en el servidor en general requieren que se incorpore una función o bien objeto analizador de JSON. Ciertos programadores, singularmente los familiarizados con el lenguaje C, hallan JSON más natural que XML, mas otros desarrolladores hallan su breve notación algo confusa, singularmente tratándose de datos con fuerza jerarquizados o bien anidados muy de manera profunda. Hay más comparaciones entre JSON y XML en JSON.org YAML es un superconjunto de JSON que trata de superar ciertas restricciones de este. Si bien es significativamente más complejo, todavía puede considerarse como ligero. El lenguaje de programación Ruby emplea YAML como el formato de serialización por defecto. Así, es posible manejar JSON con bastante sencillez.Douglas Crockford fue el primero en precisar y popularizar el JSON
miObjeto=JSON.parse(json_datos);
varhttp_request=newXMLHttpRequest();varurl="http://example.net/jsondata.php";// Esta URL debería devolver datos JSON// Descarga los datos JSON del servidor.http_request.onreadystatechange=handle_json;http_request.open("GET",url,true);http_request.send(null);functionhandle_json()