繁体   English   中英

获取计算机Node.JS的IP地址

[英]Getting the ip address of the computer Node.JS

我有一个问题,但是如何获取在Node.JS上运行我的应用程序的计算机的IP地址? 重要的是,IP地址一定不能是本地的(127.0.0.1或192.168.1.1)。 先感谢您

您可以使用os.networkInterfaces()获取所有IP地址信息,并排除本地地址。

根据Node.js 文件

os.networkInterfaces()方法返回一个对象,该对象仅包含已分配了网络地址的网络接口。

返回的对象上的每个键都标识一个网络接口。 关联值是一个对象数组,每个对象描述一个分配的网络地址。

这是一个代码示例:

'use strict';

const os = require('os');

let networkInterfaces = os.networkInterfaces();

let nonLocalInterfaces = {};
for (let inet in networkInterfaces) {
  let addresses = networkInterfaces[inet];
  for (let i=0; i<addresses.length; i++) {
    let address = addresses[i];
    if (!address.internal) {
      if (!nonLocalInterfaces[inet]) {
        nonLocalInterfaces[inet] = [];
      }
      nonLocalInterfaces[inet].push(address);
    }
  }
}

console.log(nonLocalInterfaces);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM