使用node.js獲取本地IPv4地址
項(xiàng)目需求
在公司開(kāi)發(fā)項(xiàng)目過(guò)程中, 使用Vue
項(xiàng)目配置本地host的時(shí)候;
每個(gè)人從SVN
倉(cāng)庫(kù)pull下來(lái)的代碼, 安裝依賴(lài)后, 無(wú)法正常運(yùn)行, 需要修改ip為自己本地IP?(不知何用意);
索性每次都要改, 每個(gè)開(kāi)發(fā)者都麻煩, 所以自己寫(xiě)了一個(gè)方法來(lái)獲取IP地址;
解決方法
const os = require('os');
const getLocalIP = () => {
//所有的網(wǎng)卡
const ifaces = os.networkInterfaces();
let network = [];
//移除loopback,沒(méi)多大意義
Reflect.ownKeys(ifaces).forEach(key => {
if (!/loopback/ig.test(key)) {
network = [...network, ...ifaces[key]];
};
});
return network.reduce((arr, { address, family }) => {
const ip = (/^IPv4$/ig.test(family) ? [address] : []);
return [...arr, ...ip];
}, []);
};
// exports.getLocalIP = getLocalIP
const a = getLocalIP()
console.log(a);