webapp上的网络质量指标

Sak*_*ket 5 html javascript java networking

有没有办法在Web应用程序上指示客户端的当前网络质量(某种类型的条,类似于手机上的n/w质量条)?

我们的一个Web应用程序处理数据传输,由于客户端的网络问题而导致大多数传输失败,他们显然不了解它.客户端报告失败,而实际问题是他们的n/w连接,我正在寻找一种方法,可以在他们使用应用程序时向他们指出相同的内容(在我的Web应用程序内).

我知道还有其他工具可供调查,但外行用户设置没有它们(至少我们的用户).

谢谢.

Kyl*_*ler 2

一种方法是使用window.navigator.onLine例如:

if (navigator.onLine) {
  alert('online')
} else {
  alert('offline');
}
Run Code Online (Sandbox Code Playgroud)

或捕获更改:

window.addEventListener("offline", function(e) {
  alert("offline");
}, false);

window.addEventListener("online", function(e) {
  alert("online");
}, false);
Run Code Online (Sandbox Code Playgroud)

您可以取特定时间间隔的平均值,并开发一种算法来将连接性量化为 10%、50% 等......

您还可以设置 AJAX 轮询并观察超时,但要小心不要增加太多流量:

$.ajax({
  type: "GET",
  url: "yourserver.com",
  success: function(data){
    alert("Connection active!")
  }
  error: function(XMLHttpRequest, textStatus, errorThrown) {
    if(textStatus == 'timeout') {
       alert('Connection seems dead!');
    }
  }
});
Run Code Online (Sandbox Code Playgroud)