我使用$.ajax
从REST API获取JSON
数据。
问题在于我得到的responseText
格式不正确,因此我得到SyntaxError: JSON.parse: unexpected non-whitespace character error
。
我发现问题在于responseText
是这样的:
"433
{"Result":{"Locale":"us","ServiceId":1111,"Name":"name",
"HDLevel":"HD Level
5a0
Unknown","Category":"News","Subcategory":"ne
5b0
ws"}
}"
...
因此无法正确解析为JSON
。
我想我需要一种方法来删除所有这些字符串(433
,5a0
,5b0
)并删除换行符。
但我认为我需要一种通用的方法来删除这些字符串,因为我的responseText
中有更多类似字符串,我无法知道所有名称。
关于如何做到这一点并获得正确的JSON的任何想法? 感谢
修改:
该服务使用JSON作为返回数据的格式,我使用:
$.ajax({
type: 'GET',
url: URL,
dataType: 'json',
success: function(obj) {
},
error: function( jqXHR, textStatus, errorThrown ) {
},
});
我无法访问服务服务器端,因此无法编辑任何php或其他语言问题。
答案 0 :(得分:2)
对我来说更像是一个意想不到的http传输编码(chunked)。你的实际JSON数据可能很好。看看这个问题:jquery support Transfer-Encoding:chunked? how