如何让fetch api每2秒听一次服务器

时间:2018-03-12 05:32:53

标签: javascript fetch-api

我正在制作一个按钮点击运行的应用程序fetch api,它获取从站点返回的数据。当解析的var为true时,该站点只会发送回数据。那么我如何在解析时不断地继续监听var更改然后显示响应。现在我只是在点击按钮时获取数据。

const url = 'https://sarthak999.pythonanywhere.com/';
  let fetchData = {
  method: 'POST',
  headers: {
      'Content-Type': 'application/json'
  },
  body: JSON.stringify({
      key: name+'$'+text
  })
}
fetch(url, fetchData)
  .then((resp) => resp.json())
  .then(function(data) {
      console.log(data);
      str = JSON.stringify(data);
      glob = "bot";
      var reply = data.split('$');
      var scrollTop = $('#mydiv').scrollTop();
      var sbHeight = window.innerHeight * (window.innerHeight / document.getElementById('mydiv').offsetHeight);
      var scroll = false;
      console.log($("#mydiv")[0].scrollHeight+" "+scrollTop+" "+sbHeight+" "+(document.getElementById('mydiv').scrollTop-
    document.getElementById('mydiv').clientHeight));
      if($("#mydiv")[0].scrollHeight!=scrollTop)
      {
        scroll=true;
      }
      for (var i = 0; i < reply.length; i++) {
        $chat.append('<div class="BotWrapper">' +
            '<div class="speech-bubble z-depth-5">' +
            '<p>' + reply[i] + '</p>' +
            '</div>' +
            '<div class=""></div></div>');
            $('.typing').fadeOut();
            $("#mydiv").scrollTop($("#mydiv")[0].scrollHeight);
      }

  })
  .catch(function(error) {
      console.log(error);
  });

0 个答案:

没有答案