📋 Archivos JSON
Archivos JSON de prueba
102,450 bytes
application/json
10,292 bytes
application/json
10,485,830 bytes
application/json
1,048,578 bytes
application/json
5,243,008 bytes
application/json
Acerca de Archivos JSON
Hay archivos JSON de prueba de 10 KB a 10 MB, gratis. Contienen datos en array con texto japonés, de modo que ejercitan una estructura cercana a una respuesta de API real.
Como la validez de un JSON no puede determinarse sin analizar el documento entero, el coste de "leerlo todo solo para validar" crece con el tamaño. Estos archivos ayudan a decidir cuándo pasar a un parser en streaming.
Usos habituales
- Probar cómo maneja una API REST una respuesta grande
- Medir el rendimiento de parsers y serializadores JSON
- Observar el comportamiento del front-end al renderizar un conjunto grande de datos
- Comprobar que la profundidad de anidamiento y la precisión de enteros grandes se conservan
Referencias y artículos relacionados
📖 Dónde se suele tropezar
Ficheros JSON de 10 KB a 100 MB, para comprobar limites de tamano de peticion y el comportamiento del parser. La estructura es deliberadamente simple. Para probar anidamiento profundo o arrays enormes, construyelos tu teniendo en cuenta lo de abajo.
| Caso | Qué ocurre | Qué hacer |
|---|---|---|
| Los enteros grandes pierden sus ultimos digitos | Un Number de JavaScript es un double, asi que los enteros solo son exactos hasta 253−1. Un identificador de 19 digitos se redondea en silencio. |
Envia los valores tipo identificador como cadenas. Si no puedes cambiar la API, extraelos antes de convertirlos a numero usando BigInt o una opcion del parser. |
| Un JSON de 100 MB revienta la memoria | json_decode() y JSON.parse() materializan el documento entero de golpe, y el objeto resultante pesa varias veces lo que el texto. |
Procesa las entradas grandes elemento a elemento con un parser en streaming. A menudo es mas simple operativamente limitar el tamano en la API y devolver 413 para que el cliente lo parta. |
| Una clave duplicada pasa desapercibida | La especificacion de JSON no prohibe claves duplicadas y la mayoria de los parsers se quedan callados con la ultima. Un fallo del productor pasa sin mas. | Valida contra un JSON Schema cuando la forma es conocida. Para solo inspeccionar la estructura, formatear con el formateador JSON y comparar es mas rapido. |
Puedes poner un charset en Content-Type: application/json, pero la especificacion de JSON toma UTF-8 por defecto. Algunos parsers rechazan UTF-16 o un BOM inicial, asi que quitar el BOM antes de pasar el texto evita una clase entera de incidentes.