首页 > 代码库 > node.js获取本机IP地址

node.js获取本机IP地址

想在node中获取本机ip,需要先判断操作系统,可以通过process.platform来判断,MAC下得到的值是darwin,window下得到的值是win32;

然后再利用os模块的networkInterfaces()可以获取所有网卡信息;从其中就可以找到需要的ip;下面是个小例子

function hostIp() {
    var IPv4;
    if(process.platform === ‘darwin‘) {
        for(var i = 0; i < os.networkInterfaces().en0.length; i++) {
            if(os.networkInterfaces().en0[i].family == ‘IPv4‘) {
                IPv4 = os.networkInterfaces().en0[i].address;
            }
        }
    } else if(process.platform === ‘win32‘) {
        for(var i = 0; i < os.networkInterfaces()[‘本地连接‘].length; i++) {
            if(os.networkInterfaces()[‘本地连接‘][i].family == ‘IPv4‘) {
                IPv4 = os.networkInterfaces()[‘本地连接‘][i].address;

            }
        }
    }
    return IPv4;
}

当然也可以通过os.type来判断操作系统。MAC下返回的仍然是darwin;而windows 下返回的是window_NT

node.js获取本机IP地址