Javascript:请求数组的ajax问题

时间:2018-04-27 23:12:21

标签: javascript ajax http

我对javascript很新,我还在努力掌握回调概念。即便如此,我也不确定我是否有回调或ajax本身的问题。

所以我有这个回调函数,它基本上在我的代码中的其他地方接受一组对象。



function powerAmplifierInfo(id, cb) {
  ApiGet('/system/radio-frequency/tx/' + id + '/power-amplifier', function (err, result) {
    if (err && !TESTING) {
      alertError("Connection error: " + err.statusText);
      return;
    } else if (result && result.result.code !== "OK") {
      alertError(result.result.message);
      return;
    }

    if (TESTING) {
      result = { powerAmplifier: "TEST model", uptime: Date.now() };
    }

    cb(result.powerAmplifier);
  });
}




此函数使用另一个函数,该函数使用ajax将get请求发送到某个服务器。



function ApiGet(urlSuffix, cb) {
  var url = apiPrefix + "/" + urlSuffix;

  $.ajax({
    url: url,
    type: 'GET',
    success: function (result) {
      cb(null, result);
    },
    error: function (err) {
      cb(err, null);
    }
  });
}




现在,我的列表中的请求链可以工作,但是当我在循环中重新运行代码时,有时请求会混在一起,因为似乎ajax在发送请求时切换了一些端口命令。我在使用Wireshark对本地网络进行故障排除时发现了这个问题。这是一张图片来展示它: Wireshark port mixup image

Get请求已发送,但在第3和第4个之间,有一个端口混合。我们可以看到,服务器在没有端口顺序混淆的情况下回复。

我想知道,这是一个已知问题,还是我的代码,甚至我的服务器都有问题?在我的回调函数中发送单个对象而不是对象数组时,我没有收到此错误。

提前致谢!

0 个答案:

没有答案