2010-12-15 1 views
2

JSON prend-il en charge Unicode uniquement? Cela ne semble pas être un problème d'encodage si c'est le cas. Tout JSON ne sera-t-il pas unicode, et le jeu de caractères ne sera-t-il qu'une question de stockage?L'encodage est-il important pour JSON?

Répondre

10

De the RFC, "texte JSON doit être codé en Unicode." Unicode est vraiment un jeu de caractères, pas un encodage, cependant. Il dit aussi que "l'encodage par défaut est UTF-8". La même section explique comment faire la distinction entre UTF-32BE, UTF-16BE, UTF-32LE, UTF-16LE et UTF-8 sur la base du modèle de null. En résumé, utilisez UTF-8 sauf si vous avez une bonne raison de faire autrement. Cependant, vous pouvez utiliser un codage Unicode différent.

+0

@Stephen, merci pour la correction. J'ai pensé (incorrectement) que SHALL était équivalent à DEVRAIT. Vous avez raison, c'est en fait équivalent à MUST. –

+0

Il y a même un RFC pour la terminologie dans les RFC - http://tools.ietf.org/html/rfc2119 –

+0

@Stephen, oui, j'étais au courant de cette RFC. Mais je ne l'ai pas vérifié avant de répondre. :) –

0

Le codage est important lorsque vous lisez ou analysez la chaîne JSON à envoyer dans la réponse. L'encodage de réponse entrerait donc en jeu. Lors de la lecture d'une requête JSON, vous devez vous assurer que vous avez également défini un codage pour ce cas.