VM2022:2未捕获的语法错误:意外的令牌:在AJAX调用上

时间:2018-11-13 10:58:41

标签: javascript python jquery json ajax

我从后端发送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)

enter image description here

我的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
});

我不知道哪里出了问题。请帮忙。

1 个答案:

答案 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
});