登录
原创

基于node.js的免费IP地址归属地查询

专栏聚合数据JUHE.CN
发布于 2020-10-16 阅读 89
  • JavaScript
  • Node.js
  • HTTP
  • NPM
  • 聚合
原创

一、开通接口

IP地址归属地查询服务使用聚合数据提供的免费接口,每天可以100次免费调用。可以通过 https://www.juhe.cn/docs/api/id/1 注册及开通。

二、GET方式请求接口

//node request模块安装命令:npm install request

var request = require('request');
var querystring = require('querystring');

var queryData = querystring.stringify({
    "ip": "58.215.15.114",  // 查询的IP地址
    "key": "******",  // 申请的接口请求key
});

var queryUrl = 'http://apis.juhe.cn/ip/ipNew?'+queryData;

request(queryUrl, function (error, response, body) {
    if (!error && response.statusCode == 200) {
        var jsonObj = JSON.parse(body); // 解析接口返回的JSON内容
        if (jsonObj) {
            var errorCode = jsonObj.error_code;
            var reason = jsonObj.reason;
            if (errorCode == 0) {
                // 请求成功
                var country = jsonObj.result.Country;
                var province = jsonObj.result.Province;
                var city = jsonObj.result.City;
                var isp = jsonObj.result.Isp;
                console.log("国家:"+country+"\n省份:"+province+"\n城市:"+country+"\n运营商:"+isp);
            } else {
                // 请求失败
                console.log('请求失败:'+errorCode+' '+reason);
            }
        } else{
            console.log('解析JSON异常');
        }
    } else {
        console.log('请求异常');
    }
})

三、POST方式请求接口

//node request模块安装命令:npm install request

var request = require('request');
var querystring = require('querystring');

var queryData = querystring.stringify({
    "ip": "58.215.15.114",  // 查询的IP地址
    "key": "******",  // 申请的接口请求key
});

var queryUrl = 'http://apis.juhe.cn/ip/ipNew?';

request.post({url:queryUrl, form:queryData},function (error, response, body) {
    if (!error && response.statusCode == 200) {
        var jsonObj = JSON.parse(body); // 解析接口返回的JSON内容
        if (jsonObj) {
            var errorCode = jsonObj.error_code;
            var reason = jsonObj.reason;
            if (errorCode == 0) {
                // 请求成功
                var country = jsonObj.result.Country;
                var province = jsonObj.result.Province;
                var city = jsonObj.result.City;
                var isp = jsonObj.result.Isp;
                console.log("国家:"+country+"\n省份:"+province+"\n城市:"+country+"\n运营商:"+isp);
            } else {
                // 请求失败
                console.log('请求失败:'+errorCode+' '+reason);
            }
        } else{
            console.log('解析JSON异常');
        }
    } else {
        console.log('请求异常');
    }
})

四、返回结果

image.png

评论区

励志做一条安静的咸鱼,从此走上人生巅峰。

0

0

1