jQuery 无法解析包含法语 C-cedilla 字符的有效 json 响应。
jQuery json 请求是这样的:
$.ajax({
url: "retrieve",
dataType: 'json',
success: function (x) { },
error: function (jqXHR, textStatus, errorThrown) { });
服务器发送此响应:
{
"trist":"{\"Lines\":[{\"C\":\"Director: Beça\"}]}"
}
jQuery 失败,因为 Beça 中的 c-cedilla 而抱怨无效字符。如果我只检查浏览器中的原始 json 响应,就会恢复正常。到目前为止,我的所有调查都表明这应该是可行的,所以我不知道如何进一步发展。
经过进一步审查......“trist”字段的值本身就是json对象;换句话说,“trist”的值旨在提取为字符串,然后解析为 Lines 对象。也许那个内部 json 没有正确 utf-8 编码?也许内部 json 需要以某种方式“转义”。