node使用https获取本地公网和外网IP

前言

        随着互联网的高速发展,前端技术也逐渐向后端延伸.Nodejs最初在前端技术发展,现如今也列入了服务器语言行列,为前端开发者自主开发提供一大助力.

文章目的

        作为前端转全栈的程序员的我,在回顾node的时候遇到一个需求:监控我本机的公网IP是否被切换,切换了则修改配置文件的IP地址,于是我去各大平台浏览解决方案,结果发现居然大部分都需要money.不经吐槽这个时代真是,没钱就学不到技术了吗???况且这个应该也不是很难.于是我大阅查找文章才有了这篇总结文章.

正文

      环境

                环境需要下载NodeJs,下载地址:Node.js 中文网 (nodejs.cn)

               推荐下载16.0版本

node -v
npm -v

        如果cmd运行输出正常即为安装正确

        代码

                1.这里我们首先导入os和https库

const https = require('https');
const os = require("os");

                2.获取IP地址

                这个代码片段会使用 ipify 的 API 来获取公网 IP.

function getPublicIP() {
    https.get('https://api.ipify.org?format=json', (resp) => {
        let data = '';

        // 接收数据块
        resp.on('data', (chunk) => {
            data += chunk;
        });

        // 完成响应
        resp.on('end', () => {
            return JSON.parse(data).ip;
        });

    }).on("error", (err) => {
        console.log("Error: " + err.message);
    });
}

        3.运行结果

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值