欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 会展 > 前端判断电脑是否断网 并且在重连的时候发请求给后端记录

前端判断电脑是否断网 并且在重连的时候发请求给后端记录

2025/1/14 5:20:47 来源:https://blog.csdn.net/m0_68331234/article/details/139769321  浏览:    关键词:前端判断电脑是否断网 并且在重连的时候发请求给后端记录

用electron 打包的电脑软件 加了一个断网提示和联网发请求给后端做记录

<!DOCTYPE html>
<html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1.0"><link rel="icon" href="<%= BASE_URL %>favicon.ico"><!-- <title><%= htmlWebpackPlugin.options.title %></title> --><title>吧台绿树电竞 - V1.0.0 店铺ID</title><script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script> </head><body><noscript><strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled.Please enable it to continue.</strong></noscript><div id="app"></div><!-- built files will be auto injected --><!-- 页面内容 --><script>let offlineTime = null;// let nowtim = new Date()window.addEventListener('online', () => {const now = new Date();if (offlineTime) {const offlineDuration = now - offlineTime; // 离线时长(毫秒)  console.log(`网络重连成功,上次断网时间:${new Date(offlineTime).toLocaleString()}, 重连时间:${now.toLocaleString()}, 离线时长:${offlineDuration} 毫秒`);alert(`网络重连成功,离线时长:${offlineDuration / 1000 / 60} 分钟`);this.sendAjaxRequest() //断网时间localStorage.setItem('nowTime', now.toLocaleString()); //重连this.nowRequest()} else {console.log(`网络重连成功,之前没有断网记录`);}offlineTime = null; // 重置离线时间  });window.addEventListener('offline', () => {offlineTime = new Date(); // 记录断网时间  console.log(`当前断网,时间:${offlineTime.toLocaleString()}`);localStorage.setItem('offlineTime', offlineTime.toLocaleString()); //断网alert('当前断网');});// 断网function sendAjaxRequest() {  var formData = new FormData();  formData.append('storeId', sessionStorage.getItem("storeId") || ''); formData.append('type', 0);  formData.append('ip', sessionStorage.getItem("ip") || ''); formData.append('createTime', offlineTime.toLocaleString() || ''); var xhr = new XMLHttpRequest();  xhr.open("POST", 'http://192.168.0.124:8091/bar/log/add', true); xhr.onload = function () {  if (xhr.status === 200) { } else {  console.error("Request failed. Returned status of " + xhr.status);  }  }; xhr.send(formData);  };//重连function nowRequest() {  let nowtim = new Date()var Data = new FormData();  Data.append('storeId', sessionStorage.getItem("storeId") || ''); Data.append('type', 1);  Data.append('ip', sessionStorage.getItem("ip") || ''); Data.append('createTime', nowtim.toLocaleString() || ''); var xhrb = new XMLHttpRequest();  xhrb.open("POST", 'http://192.168.0.124:8091/bar/log/add', true); xhrb.onload = function () {  if (xhrb.status === 200) {  console.log(xhrb.responseText);  } else {  console.error("Request failed. Returned status of " + xhrb.status);  }  };  xhrb.send(Data);  } </script>
</body></html>

我是写在public- index.html 文件中 这样他只要是在运行中都可以 判断是否断网

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com