好用的IP反查接口(2)

IP-地理信息查询接口-本地化

参考:

通过Ip查询对应地址,Ip2location全球IP地址网段-CSDN博客

因为在线接口有限制(毕竟别人提供服务,服务器,数据维护,域名啥的都要费用), 所以本地化服务的需求。

java使用 demo

对于 Java 开发者,可以使用 Maven 或 Gradle 添加 IP2Location 依赖项,并使用其 API 查询数据库。

XML 复制代码
<!-- Maven 依赖 -->
<dependency>
    <groupId>com.ip2location</groupId>
    <artifactId>ip2location-java</artifactId>
    <version>最新版本</version>
</dependency>

demo (测试这个性能,二进制文件,第一次慢点 5毫秒,也和你的数据库文件大小有关系)

java 复制代码
import com.ip2location.IP2Location;

// 加载数据库
IP2Location db = new IP2Location("path/to/your/IP2LOCATION-LITE-DB1.BIN");

// 查询 IP 地址
String ip = "8.8.8.8";
try {
    IP2Location.Record rec = db.getRecordByIP(ip);
    System.out.println("Country: " + rec.countryLong);
    System.out.println("Region: " + rec.region);
    System.out.println("City: " + rec.city);
} catch (Exception e) {
    e.printStackTrace();
}

// 关闭数据库
db.close();

数据库资源下载

GitCode - 全球开发者的开源社区,开源代码托管平台

官网下载地址

IP2Location LITE Log In

可下载IPv4 相关的二进制数据库

小结:

本地化服务,优点是调用无限制,缺点:数据库文件需要更新。

相关推荐
韩曙亮17 小时前
【Flutter】Flutter 中的 Android / iOS 特殊配置 ① ( 网络权限配置 | HTTP 明文传输配置 | 应用名称配置 )
android·网络·flutter·http·ios·网络权限
爱装代码的小瓶子17 小时前
3. 设计buffer模块
linux·服务器·开发语言·c++·php
流浪00117 小时前
Linux系统篇(四):一文吃透 Linux 虚拟地址空间:从页表映射到内核结构体全链路拆解
linux·运维·服务器
Jacob程序员17 小时前
WebSSH技术实现全解析
linux·运维·服务器·websocket
暗冰ཏོ17 小时前
运维岗位完整学习指南:从 Linux 基础到 DevOps / SRE 实战
linux·运维·服务器·ubuntu·运维开发·devops
龙泉寺天下行走17 小时前
bash (())奇怪的返回码
linux·运维·服务器
梁辰兴17 小时前
计算机网络基础:动态主机配置协议 DHCP
网络·计算机网络·dhcp·计算机网络基础·动态主机配置协议·梁辰兴
Dream_ksw17 小时前
借助AI再次理解三次握手和四次挥手
服务器·网络·tcp/ip
壹号用户18 小时前
初识linux
linux·运维·服务器
梦想的颜色18 小时前
硬核|Docker从入门到精通:镜像构建、仓库推送、Compose编排、生产部署全攻略
运维·服务器·docker·容器·部署·环境·镜像