【发布时间】:2013-08-16 01:40:21
【问题描述】:
我有一个通过 AJAX 向 php 文件发出请求的页面,该 AJAX 文件显示一个 JSON 作为响应,我遇到了一些问题。
这导致我的页面使用 UTF-8 字符集来显示一些特殊字符等;我的 AJAX 文件默认使用 ANSI 编码,但后来我决定将其更改为 UTF-8 以获取正确的符号,但是当我使用 JSON.parse 时,它会抛出错误“Uncaught SyntaxError: Unexpected token”,(如果AJAX 文件编码为 UTF-8),然后我更改为 ANSI 而且效果很好,我不知道 JSON 为什么会有这种行为。
当我查看 ANSI 和 UTF-8 的输出 (xhr.responseText) 时,它们是相同的(我什至没有在 UTF-8 中使用特殊字符)。
也许 JSON.parse 不接受来自 UTF-8 文件的响应(我不相信),还是我必须设置一个标题才能解决这个问题?你们怎么看?谢谢。。
【问题讨论】:
标签: javascript ajax json character-encoding xmlhttprequest