AJAX get request JSONP 解析器错误: readyState":4,"status":200,"statusText":"load"}]



嘿,我目前正在尝试使用延迟的时间和完成函数进行多个ajax请求调用。但是,在某些请求中,我收到解析错误:readyState":4,"status":200,"statusText":"load"。

试图查看与我的问题类似的其他问题,并尝试过各种方式进行调试,但都达不到要求。

这是我的 ajax 请求调用:

    $.ajax({
      'url' : message.action,
      'data' : parameterMap,
      'dataType' : 'jsonp',
      'async' : 'true',
      'jsonpCallback' : 'cb',
      'cache': true
    })
    .done(function(data,textStatus, jqXHR) {
      console.log("Success: " + textStatus);
      //inserting data to map
      var mapIndex = i.toString();
      yelpResults = yelpResults.set(mapIndex, JSON.stringify(jqXHR));
    }) //end of done
    .fail(function(jqXHR, textStatus, errorThrown) {
        console.log('error[' + errorThrown + '], status[' + textStatus + '], jqXHR[]');
    })
  );

该 ajax 请求被推送到一个列表中,在该列表中返回该列表并在此函数中使用:

var generateBusiness = function(term,subPointResults){
  var promises = yelpSearch(term, subPointResults);
  console.log("Generate business is being called");
  $.when.apply(null, promises).done(function(){
    // call
    console.log("All requests done");
    // findPriorityResuts(subPointResults);
    yelpRequestCounter = 0;
  });
}

我总共发出 10 个请求,其中大约 5 个成功加载,其他请求因解析错误而失败。

任何建议将不胜感激! :)

编辑:就成功解析每个请求而言,我有这个工作,但我以 1 秒的间隔调用每个请求。 并希望找到一种不同的并行方式。

所以我知道这不是进来的数据。

谢谢!

由于 jsonp 请求实际上是脚本请求,而不是 ajax 请求,因此对多个请求使用相同的回调是不好的。

删除'jsonpCallback' : 'cb',让jQuery动态创建,重要的是,跟踪唯一的回调

相关内容

最新更新