qiao-get-ip:免费获取公网ip
【前言】nodejs自带的获取ip的一些api,获取的都是用户本地的ip,不是公网ip,也就是public ip,公网ip只有在用户连入internet后才会有,一般会有一些获取ip的收费ip库,同样也有一些比较靠谱的免费获取自己公网ip的方法。【icanhazip】http://icanhazip.com/,是国外的一个免费获取ip的地址,只要访问这个地址就会返回用户自己的公网ip【sohu获取
·
【前言】
nodejs自带的获取ip的一些api,获取的都是用户本地的ip,
不是公网ip(public ip),公网ip只有在用户连入internet后才会有,
获取用户公网ip,一般的方法是通过一些收费的ip库获取,
同样也有一些免费获取自己公网ip的方法。
【icanhazip】
http://icanhazip.com/,是国外的一个免费获取ip的地址,只要访问这个地址就会返回用户自己的公网ip
【sohu获取ip】
上述网址是国外的网站,有时候可能响应较慢,国内也有很多免费获取公网ip的网站,
比如sohu的一个网址,http://txt.go.sohu.com/ip/soip,
只是这个网站访问后返回的内容比较多,需要自己筛选出其中的公网ip,
大概的思路是通过正则表达式获取返回内容中的ip地址
【qiao-get-ip】
综上,封装了一个npm包,qiao-get-ip,qiao-get-ip - npm
主要功能:
- getIpByIcanhazip,通过上述第一个网址获取公网ip;
- getIpBySohu,通过上述第二个网址获取公网ip;
- getIp,先通过第二个网址获取ip,如果不成功再通过第一个网址获取公网ip
- 以上方法适用于nodejs环境和浏览器环境
使用方法也很简单:
'use strict';
var q = require('qiao-get-ip');
var test = async function(){
try{
var ip = await q.getIp();
console.log(ip);
}catch(e){
console.log(e);
}
};
test();
更多推荐
已为社区贡献3条内容
所有评论(0)