Официальная спецификация JSON гласит:
Текст JSON ДОЛЖЕН быть закодирован в UTF-8, UTF-16 или UTF-32.Кодировка по умолчанию - UTF-8, и ...
Таким образом, по сути, сообщение JSON может входить в любую из этих трех кодировок.Но ... как я могу угадать , какой это, когда я получаю это?
Сообщение может поступать из нескольких источников, таких как очередь, из браузера, из базы данных, файловой системы и т. Д.
В нем также говорится игнорировать маски порядка байтов (BOM).:
... реализации, которые анализируют тексты JSON, МОГУТ игнорировать наличие метки порядка байтов, а не рассматривать ее как ошибку.
Я помню, что документы XML имели"пролог", в котором указана кодировка, но я не могу найти ничего похожего для сообщений JSON.
Есть идеи?