利用Nodejs获取公网IP

114 阅读1分钟
原文链接: alili.tech

因为树莓派放在家里,因为运营商的关系,公网ip是一直会变的.
那我们要怎么样才能快捷的拿到当前网络的公网ip呢?

今天介绍一个小工具,可以简单的获取到公网ip.

public-ip

安装

npm install --save public-ip

使用

const publicIp = require('public-ip');

publicIp.v4().then(ip => {
console.log(ip);
//=> '46.5.21.123'
});

publicIp.v6().then(ip => {
console.log(ip);
//=> 'fe80::200:f8ff:fe21:67cf'
});

设置HTTPS

如果使用https,会基于 icanhazip.com 服务来查询的.

相对来说会安全一些,但是也会稍微的慢一些.


publicIp.v4({
https:true //默认false
}).then(ip => {
console.log(ip);
//=> '46.5.21.123'
});

设置超时时间


publicIp.v4({
timeout:5000 //默认5000毫秒
}).then(ip => {
console.log(ip);
//=> '46.5.21.123'
});