Récemment rencontré le terme JSONC
dans une API YouTube. J'ai parcouru le Web, mais je n'ai pas trouvé grand chose à ce sujet. Quelqu'un peut-il expliquer si ces deux termes sont identiques ou différents?
Réponses
Trop de publicités?Il existe également jsonc
alias "JSON avec des commentaires", créé par Microsoft et utilisé par Visual Studio Code. La logique pour cela peut être trouvée ici, malheureusement sans spécification exhaustive (bien que je serais ravi d'être prouvé incorrect à ce sujet).
En plus de cela, il y a ce projet avec une spécification actuelle qui est également appelée jsonc
, mais qui fait bien plus que simplement ajouter des commentaires.
Alors qu'il y a certainement une utilité pour ces technologies, un esprit critique est conseillé. JSON contenant des commentaires n'est pas du JSON.
JSON-C semble juste être une variation de JSON principalement destinée au développement en C. En d'autres termes, selon la documentation open source, "JSON-C implémente un modèle d'objet à comptage de références qui vous permet de construire facilement des objets JSON en C, de les sortir sous forme de chaînes formatées en JSON et de les parser à nouveau en objets JSON sous forme de représentation de C."ref^1
Du point de vue de l'API YouTube (spécifiquement, la version 2, pas la nouvelle version 3), la réponse JSON-C est juste une version condensée de la réponse JSON (en supprimant les "valeurs en double, inutiles ou facilement calculées").ref^2
Pourquoi la réponse JSON aurait-elle des "valeurs en double, inutiles ou facilement calculées" de toute façon? Parce qu'elle convertit le format XML ATOM original directement en JSON dans une conversion sans perte. Vous pouvez trouver plus de détails ici.
Cependant, je recommanderais d'utiliser la version 3 de l'API de données YouTube. C'est beaucoup plus facile à utiliser. =)
JSONC est une API Javascript open source créée par Tomás Corral Casas pour réduire la taille de la quantité de données JSON transportée entre les clients et les serveurs. Il utilise deux approches différentes pour y parvenir, JSONC.compress
et JSONC.pack
. Plus d'informations peuvent être trouvées sur la page GitHub JSONC :