我有一个简单的Node.js程序在我的机器上运行,我想获得我的程序正在运行的PC的本地IP地址。我如何在Node.js中获得它?
当前回答
使用内部ip:
const internalIp = require("internal-ip")
console.log(internalIp.v4.sync())
其他回答
https://github.com/indutny/node-ip
var ip = require("ip");
console.dir ( ip.address() );
对于Underscore.js和Lodash,正确的一行代码是:
var ip = require('underscore')
.chain(require('os').networkInterfaces())
.values()
.flatten()
.find({family: 'IPv4', internal: false})
.value()
.address;
安装一个名为ip的模块,如下:
npm install ip
然后使用下面的代码:
var ip = require("ip");
console.log(ip.address());
一行程序只用于macOS的第一个本地主机地址。
当在macOS上开发应用程序时,你想在手机上测试它,并且需要你的应用程序自动选择本地主机IP地址。
require('os').networkInterfaces().en0.find(elm => elm.family=='IPv4').address
这只是提到如何自动查找ip地址。 要测试这个,你可以去终端点击
node
os.networkInterfaces().en0.find(elm => elm.family=='IPv4').address
输出将是您的本地主机IP地址。
如果你喜欢简洁的东西,下面是使用Lodash:
Var OS = require(' OS '); Var _ = require('lodash'); var firstLocalIp = _(os.networkInterfaces()).values().flatten().where({family: 'IPv4', internal: false}).pluck('address').first(); console.log('第一个本地IPv4地址是' + firstLocalIp);
推荐文章
- 如何通过history. pushstate获得历史变化的通知?
- 使用jQuery改变输入字段的类型
- 在JavaScript中,什么相当于Java的Thread.sleep() ?
- 使用jQuery以像素为整数填充或边距值
- 检查是否选择了jQuery选项,如果没有选择默认值
- Next.js React应用中没有定义Window
- 如何重置笑话模拟函数调用计数之前,每次测试
- 如何强制一个功能React组件渲染?
- 错误:无法找到模块“webpack”
- 在javascript中从平面数组构建树数组
- 将Dropzone.js与其他字段集成到现有的HTML表单中
- 如何在AngularJS中观察路由变化?
- JavaScript DOM删除元素
- 将dd-mm-yyyy字符串转换为日期
- Javascript复选框onChange