以下代码在Chrome中发布“它”,但在Safari中发布“它”。
invocation = new XMLHttpRequest()
invocation.open('POST', 'https://example.herokuapp.com/content/24/nl/123')
invocation.setRequestHeader('Content-Type', 'text/plain; charset=UTF-8');
invocation.send('{"data":"it’s"}')
如何说服Chrome使用UTF-8发布?
答案 0 :(得分:0)
确保设置响应标题
Content-Type: text/html; charset=UTF-8
也位于https://example.herokuapp.com/content/24/nl/123
目标网页上,而不仅仅是在网站上(请求页面)。还要检查任何数据源(包括目标本身)的编码是否为UTF-8。
据我测试,乱码编码只来自路径上的字符集不兼容性
client encoding- client request- server encoding- server data- server response
注意:如果您的网络服务器在PHP上运行,您可以使用header作为响应标头。如果由于某种原因无法设置标头,请使用iconv将您的字符集中的响应转换为UTF-8。