首页 > 其他分享 >ipify.org:免费IP查询服务详解

ipify.org:免费IP查询服务详解

时间:2025-01-15 15:36:23浏览次数:1  
标签:ipify IP 获取 地址 https org

  ​https://www.ipify.org/​ 是一个免费的公共服务网站,专门用于获取用户的公网 IP 地址。它提供了一个简单易用的 API,开发者可以通过 HTTP 请求获取客户端的 IP 地址。


主要功能

  1. 获取用户的公网 IP 地址

    • 用户或开发者可以通过访问 ipify​ 的 API,获取当前设备的公网 IP 地址。
    • 支持多种返回格式,如纯文本、JSON 和 JSONP。
  2. 简单易用

    • 无需注册或认证,直接调用 API 即可。
    • 提供清晰的文档和示例代码。
  3. 免费

    • 对于大多数开发者来说,ipify​ 是完全免费的。
    • 如果需要更高的请求频率或更高级的功能,可以选择付费计划。

API 使用示例

1. 获取纯文本格式的 IP 地址

  访问以下 URL:

https://api.ipify.org

  返回结果:

123.45.67.89

2. 获取 JSON 格式的 IP 地址

  访问以下 URL:

https://api.ipify.org?format=json

  返回结果:

{
  "ip": "123.45.67.89"
}

3. 获取 JSONP 格式的 IP 地址

  访问以下 URL:

https://api.ipify.org?format=jsonp&callback=myCallback

  返回结果:

myCallback({"ip": "123.45.67.89"});

使用场景

  1. 客户端获取 IP 地址

    • 在 JavaScript 中通过 fetch​ 或 XMLHttpRequest​ 调用 ipify​ 的 API,获取用户的公网 IP 地址。

    示例代码:

    fetch('https://api.ipify.org?format=json')
        .then(response => response.json())
        .then(data => {
            console.log('User IP:', data.ip);
        })
        .catch(error => {
            console.error('Error fetching IP:', error);
        });
    
  2. 服务器端获取 IP 地址

    • 在服务器端(如 Node.js、Python、PHP 等)调用 ipify​ 的 API,获取客户端的公网 IP 地址。

    Node.js 示例:

    const axios = require('axios');
    
    axios.get('https://api.ipify.org?format=json')
        .then(response => {
            console.log('User IP:', response.data.ip);
        })
        .catch(error => {
            console.error('Error fetching IP:', error);
        });
    
  3. 调试和测试

    • 开发者可以使用 ipify​ 快速获取自己的公网 IP 地址,用于调试或测试网络配置。

优点

  1. 简单易用

    • API 设计简洁,无需复杂的参数或认证。
  2. 免费

    • 对于大多数开发者来说,完全免费使用。
  3. 高可用性

    • 服务稳定,响应速度快。
  4. 支持多种格式

    • 支持纯文本、JSON 和 JSONP 格式,方便集成到不同的项目中。

注意事项

  1. 隐私问题

    • 获取用户的 IP 地址可能涉及隐私问题,确保遵守相关法律法规(如 GDPR)。
  2. 请求频率限制

    • 免费版本可能有请求频率限制,如果需要更高的请求频率,可以考虑付费计划。
  3. 依赖第三方服务

    • 由于 ipify​ 是第三方服务,如果服务不可用,可能会影响你的应用。建议在代码中添加错误处理逻辑。

类似服务

  如果你需要替代方案,以下是一些类似的 IP 地址查询服务:

  1. ipinfo.io

    • 提供 IP 地址的详细信息(如地理位置、ISP 等)。
    • 免费版本有请求限制。
    • 官网:https://ipinfo.io
  2. ipapi.co

    • 提供 IP 地址的地理位置、时区、货币等信息。
    • 免费版本有请求限制。
    • 官网:https://ipapi.co
  3. ifconfig.me

    • 提供简单的 IP 地址查询服务。
    • 支持多种返回格式。
    • 官网:https://ifconfig.me

总结

  ​https://www.ipify.org/​ 是一个简单、免费且可靠的 IP 地址查询服务,适合开发者快速获取用户的公网 IP 地址。无论是客户端还是服务器端,都可以轻松集成到项目中。如果需要更详细的信息(如地理位置),可以考虑使用其他类似服务。

标签:ipify,IP,获取,地址,https,org
From: https://www.cnblogs.com/shenhuanjie/p/18673115/ipifyorg-detailed-explanation-of-free-ip-qu

相关文章

  • 如何解决定义了重复的 "system.web.extensions/scripting/scriptResourceHandler" 节
    问题描述在使用ASP.NET应用程序时,可能会遇到配置文件中定义了重复的 "system.web.extensions/scripting/scriptResourceHandler" 节的问题。这通常会导致应用程序无法正常启动或运行,并抛出配置错误。此问题的具体表现形式是:当尝试访问网站时,会收到一个配置错误提示,指出存在重复......
  • CentOS 7 - Could not resolve host: mirrorlist.centos.org; Unknown error
    CentOS7当运行yumupdate时,提示错误信息Couldnotresolvehost:mirrorlist.centos.org;UnknownerrorLoadedplugins:fastestmirror,ovlLoadingmirrorspeedsfromcachedhostfileCouldnotretrievemirrorlisthttp://mirrorlist.centos.org/?release=7&arch=x86......
  • (NIPS-2024)GAN 已死;GAN 万岁!现代基线 GAN
    GAN已死;GAN万岁!现代基线GANpaper是布朗大学发表在NIPS2024的工作papertitle:TheGANisdead;longlivetheGAN!AModernBaselineGANCode:https://github.com/brownvc/R3GANAbstract有一种普遍的说法是GAN难以训练,文献中的GAN架构充斥着经验技巧。我......
  • 必知必会!JavaScript 开发中的反模式与避坑指南
    一、开发“雷区”:JavaScript反模式危机四伏JavaScript作为软件开发领域的多面手,在Web前端、后端乃至移动端开发中均占据着举足轻重的地位。然而,在实际的开发过程中,众多反模式如同隐藏在暗处的陷阱,时刻威胁着开发的顺利进行。这些反模式的产生,源于JavaScript灵活的语法......
  • shell获取ip的方式
    1、以函数获取ip的案例1)构建函数functionget_ip(){函数体}这个function关键字用于定义一个名为get_ip的函数2)解析默认路由array=($(echo"$route"|tr''''))array=($(/usr/sbin/iproute|tr''''))这个命令将route变量的内容转换为一个数组array,tr'......
  • Pip - Installing plotly stuck
    pipinstall-ihttps://pypi.org/simplepackage_namepipinstall-ihttps://pypi.python.org/simplepackage_namepipinstall-ihttps://pypi.tuna.tsinghua.edu.cn/simplepackage_name (duckdb_penv)frank@ZZHPC:/mnt/d/ZZHUBT/workspace/duckdb_penv$pipinstall......
  • 实现网页倒计时跳转的JavaScript代码
    在网页开发中,倒计时跳转功能常用于广告页面、活动倒计时或页面跳转提示等场景。下面是一个简单的JavaScript实现,用于在指定时间后自动跳转到另一个页面。该代码会在页面上显示倒计时,并在倒计时结束后跳转到指定的URL。代码实现<spanclass="time"></span><script>var......
  • a标签下的href="javascript:void(0)"起到了什么作用?说说你对javascript:void(0)的理解
    在前端开发中,a标签通常用于创建链接,其href属性指定了链接的目标地址。然而,有时我们可能希望创建一个看起来像链接的元素,但实际上并不导航到任何其他页面或重新加载当前页面。这时,href="javascript:void(0)"就派上了用场。javascript:void(0)的作用主要是阻止链接的默认行为......
  • TypeScript 类型系统:元组、枚举与类型转换
    TypeScript提供了丰富的类型系统,本文将阐述元组、枚举、联合类型及类型转换等多个方面。1.元组(Tuple)1.1元组概述元组是TypeScript中的一种特殊数据结构,用于表示已知数量和类型的元素集合。与数组不同,元组中的元素类型可以不同。1.2创建元组letperson:[string,......
  • 【Gossip 协议】Redis 集群中节点之间的通信方式?
    #分布式系统#Gossip协议在分布式系统中,不同的节点进行数据/信息共享是一个基本的需求。一种比较简单粗暴的方法就是集中式发散消息,简单来说就是一个主节点同时共享最新信息给其他所有节点,比较适合中心化系统。这种方法的缺陷也很明显,节点多的时候不光同步消息的效率低,还太......