每秒运行XMLHttpRequest的可行性?

时间:2018-03-11 23:29:13

标签: javascript

我有一个应用程序,它通过XMLHttpRequest每秒从另一台服务器收集实时JSON数据。检查Chrome上的“网络”面板后,我发现每个数据包的大小约为697字节。我不确定这是一个高数字还是一个低数字,以及是否有任何潜在的问题像我这样运行我的应用程序。

示例:

var exhaitch = new XMLHttpRequest();
var exlink = "wheremydatais.com";
exhaitch.onreadystatechange = function(){
if (this.readyState == 4 && this.status == 200){
console.log(JSON.parse(this.responseText));}
}
exhaitch.open("GET", exlink, true);
exhaitch.send();

此javascript代码放在设置为每1.5秒运行一次的间隔内。控制台日志包含我想在我的应用程序中使用的更新数据。

据我所知,理想情况下这可以使用Node.js和Socket.io完成。但是,这个应用程序的大部分已经构建在LAMP堆栈上。所以我想知道如果这种方法长期不可持续,我的选择是什么。

我最近研究的一件事是没有Node的socket.io。虽然我还不清楚如何去做。

1 个答案:

答案 0 :(得分:1)

我认为这是更优选的,并且会更好地扩展:

function getMyData(){

  var exhaitch = new XMLHttpRequest();
  var exlink = "wheremydatais.com";
  exhaitch.onreadystatechange = function(){
    if (this.readyState == 4 && this.status == 200){
      console.log(JSON.parse(this.responseText));
      getMyData();
    }
  }
  exhaitch.open("GET", exlink, true);
  exhaitch.send();
}