您的位置:首页技术文章
文章详情页

正在使用electron和node.js做桌面应用,需要实时监听是否有网络连接,node或者electron是否可以做到

【字号: 日期:2024-07-29 17:01:19浏览:36作者:猪猪

问题描述

正在使用electron和node.js做桌面应用,需要实时监听是否有网络连接,node或者electron是否可以做到

如标题,实时监听网络情况,如果没有网络情况就会显示脱机,请问node或者electron是否可以做到?求教

问题解答

回答1:

试试navigator.onLine,不需要node.js不需要electron,普通网页都能判断是否有网络

回答2:

官方文档:http://electron.atom.io/docs/...

回答3:

function isOnline(user_callback){ /** * Show a warning to the user. * You can retry in the dialog until a internet connection * is active. */ var message = function(){const {dialog} = require(’electron’).remote;return dialog.showMessageBox({ title:'There’s no internet', message:'No internet available, do you want to try again?', type:’warning’, buttons:['Try again please','I don’t want to work anyway'], defaultId: 0},function(index){ // if clicked 'Try again please' if(index == 0){execute(); }}) }; var execute = function(){if(navigator.onLine){ // Execute action if internet available. user_callback();}else{ // Show warning to user // And 'retry' to connect message();} }; // Verify for first time execute();}// Use it, the alert('Hello world'); will be executed only if there’s an active internet connection.isOnline(function(){ alert('Hello world !');});

you can check out this blog for details.

回答4:

监听navigator.onLine可以实现,感谢两位的帮助

window.addEventListener('offline', function(e) { alert('offline')})window.addEventListener('online', function(e) { alert('online')})