我从后端发送GET请求以获取json响应。我得到这个错误。
未捕获到的SyntaxError:意外令牌:
在DOMEval(jquery-3.3.1.js:111)
在Function.globalEval(jquery-3.3.1.js:345)
在文本脚本上(jquery-3.3.1.js:9640)
在ajaxConvert(jquery-3.3.1.js:8787)
完成时(jquery-3.3.1.js:9255)
在XMLHttpRequest。 (jquery-3.3.1.js:9548)
我的AJAX请求代码是:
$.ajax({
type: "GET", //rest Type
dataType: 'jsonp', //mispelled
url: "{{ url_for('live') }}",
contentType: "application/json",
success: function (msg) {
console.log(msg);
for (var i = 0; i < msg.counters.length; i++) {
var counter = msg.counters[i];
console.log(counter);
}
},
error: ErrorMsg
});
我不知道哪里出了问题。请帮忙。
答案 0 :(得分:2)
您有两个问题。首先,您购买jQuery时,响应将已经反序列化。再次反序列化将导致您看到的错误。其次,响应格式似乎是JSON,而不是JSONP,因此dataType
属性也需要修改。试试这个:
$.ajax({
type: "GET",
dataType: 'json',
url: "{{ url_for('live') }}",
contentType: "application/json",
success: function (msg) {
for (var i = 0; i < msg.counters.length; i++) {
var counter = msg.counters[i];
console.log(counter);
}
},
error: ErrorMsg
});