判断电脑是否连接网络

Posted 方帅

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了判断电脑是否连接网络相关的知识,希望对你有一定的参考价值。

这里列举几种判断是否联网的方法

第一种获取网络设置,遍历属性,检查IPv4是否有ip地址

 

 1         //判断网络状态
 2         static judgingAddrInfo() {
 3             var interfaces = require(‘os‘).networkInterfaces();
 4             for (var i in interfaces) {
 5                 var ifObj = interfaces[i];
 6                 for (var n = 0; n < ifObj.length; n++) {
 7                     if (ifObj[n].family == ‘IPv4‘ && ifObj[n].address != ‘127.0.0.1‘) {
 8                         return true;
 9                     }
10                 }
11             }
12             return false;
13         }

第二种方法:var online = navigator.onLine;  chrome。返回浏览器的联网状态。正常联网(在线)返回true,不正常联网(离线)返回false。一旦浏览器的联网状态发生改变,该属性值也会随之变化。

但是这两种方法在某些情况下不太准确,检查到联网状态时,并不意味着浏览器一定能连接上互联网。还有其他一些可能引起误判的原因,比如你的电脑安装了虚拟化软件,可能会有一个虚拟网卡,这时它总是会显示正常联网。因此,如果你想得到浏览器确切的联网状态,应该使用其他额外的检查手段。

第三种方法:

通过发起网络资源请求,如果请求成功则表示网络连接没问题,但是这种方法依赖于所请求的资源!

 1                     //通过发起请求                    
 2                     require("request")
 3                         .get(‘http://www.baidu.com‘)
 4                         .on(‘response‘, function (response) {
 5                         console.log(response.statusCode) // 200
 6                     })
 7     
 8                      或者
 9                     //通过请求资源
10                     var i = <htmlImageElement>document.createElement("IMG");
11                     i.onload = function () {
12                         console.log("load")
13                         callBack(true);
14                     };
15                     i.onerror = function () {
16                         console.log("err")
17                         callBack(false);
18                     };
19                     i.src = ‘https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png?id=‘ + Date.now();                

 

以上是关于判断电脑是否连接网络的主要内容,如果未能解决你的问题,请参考以下文章

判断网络是否连接 和 判断GPS是否连接

戴尔笔记本错误代码dnsprobepossible,手机可以上网但电脑不行

Unity判断网络是否连接以及判断是否连接WiFi

linux如何判断网络是百兆还是千兆

获取电脑的网络连接状态适配器状态

获取电脑的网络连接状态适配器状态