为什么内容类型标头用于json?"application/json; charset = utf-8"或"application/json"?

Bob*_*obo 15 json http spring-mvc

看起来像json默认编码是UTF-8 Spring mvc默认返回"application/json; charset = utf-8"并且很难改变它.

Joa*_*uer 19

根据RFC 4627

JSON文本应以Unicode编码.默认编码为UTF-8.

它接着描述如何不同的UTF-*编码将被检测,这表明没有其它编码支持.

"SHALL"代表了绝对要求(参见RFC 2119).

而且真的是没有理由使用与JSON非UTF编码(如任何可以处理JSON可以肯定处理UTF-8).

  • *任何可以处理JSON的东西都可以绝对处理UTF-8*您认为不会这样.但是,唉,[Chrome](https://bugs.chromium.org/p/chromium/issues/detail?id=438464&)和Firefox都搞砸了,并且在内容中没有提供`charset`时将JSON解释为拉丁语-类型. (3认同)