2011-11-23 119 views
4

我正在对一个rest API进行一次ajax调用,并指定了一个http post请求的以下标头。内容类型的请求标头

Content-Type application/json; charset=UTF-8 

我的帖子正文包含一些日文/中文字符。

现在我的问题是,我需要编码的UTF-8编码后的请求正文或浏览器负责编码?

+1

请注意':'Content-Type之后需要:'' – Kornel

回答

4

当您的Content-Type标头声明UTF-8字符集时,那么您的必须以UTF-8编码发送内容。

尽管浏览器有时会“猜测”或“修复”编码,但您绝不应该依赖这一点,因为这是一种非常脆弱的逻辑,经常无法正常工作。

如果您的中文/日文内容使用不同的编码方式(如Shift-JIS),那么您将不得不使用库转换文本,如iconv

另外,您也可以在头文件中声明其他编码,但请注意,对于所有响应正文,只能使用单一编码。将所有内容转换为UTF-8通常是最好的解决方案。

相关问题