`
ronon
  • 浏览: 193735 次
  • 性别: Icon_minigender_2
  • 来自: 武汉
社区版块
存档分类
最新评论

[转]Java web 开发 获取用户ip

    博客分类:
  • java
 
阅读更多

如果通过了多级反向代理的话,X-Forwarded-For的值并不止一个,而是一串IP值,那么真正的用户端的真实IP则是取X-Forwarded-For中第一个非unknown的有效IP字符串。

 

public String getClientIpAddr(Request request) {
        String ip = request.getHeader("x-forwarded-for");
        if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
            ip = request.getHeader("Proxy-Client-IP");
        }
        if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
            ip = request.getHeader("WL-Proxy-Client-IP");
        }
        if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
            ip = request.getRemoteAddress();
        }
        return ip;
    }

分享到:
评论

相关推荐

    java IP地址工具类,java IP地址获取,java获取客户端IP地址

    在Java编程中,获取IP地址是一项常见的任务,特别是在网络编程和服务器开发中。这个"java IP地址工具类"是为了解决这个问题而设计的。它提供了便捷的方法来获取和处理IP地址,尤其对于获取客户端IP地址在Web应用中至...

    java 获取客户端ip mac地址

    在Java Web开发中,有时我们需要获取客户端的IP地址甚至是MAC地址,以便进行安全验证、用户行为追踪等操作。本文将详细介绍如何通过Java来实现这一功能。 #### 一、获取客户端 IP 地址 获取客户端的IP地址通常在...

    IP工具类,通过传入的request获取ip地址(JAVA)

    在IT行业中,尤其是在Web开发领域,获取客户端的IP地址是一项常见的任务。这有助于跟踪用户行为、提供地域针对性的服务,甚至进行安全防护。本篇文章将详细解释如何在Java环境下,通过Servlet和Reactive编程模型来...

    Java获取客户端真实IP地址

    在Web开发中,获取客户端的真实IP地址是一个常见的需求,尤其是在需要进行地理位置定位、安全审计、流量统计等场景下。然而,在存在反向代理服务器的环境中,传统的`request.getRemoteAddr()`方法可能无法直接获取到...

    java获取客户端ip及mac地址

    在 Web 开发中,获取客户端 IP 地址是一项非常重要的功能,尤其是在需要记录用户活动、实现地理位置定位或者进行安全验证等场景下。Java 提供了多种方式来获取客户端的 IP 地址,其中最常用的是通过 `...

    java获取用户真实ip

    在Web开发中,了解客户端的IP地址对于统计访问来源、安全验证(如防止恶意攻击)、地理定位等功能至关重要。然而,由于现代网络架构的复杂性,如代理服务器、负载均衡器等的存在,直接获取客户端IP地址变得不再那么...

    java非常强的获取客户端真实IP的两种方法

    在Web开发中,经常需要获取客户端的真实IP地址来进行一系列的操作,比如统计访问来源、进行地理定位、安全防护等。然而,在实际应用场景中,客户端请求往往经过了多级代理(如Apache、Squid等),这使得直接使用`...

    java获取访问者的IP地址

    java获取访问者的IP地址,适用于web开发。注意:如果是本地测试的话,通过localhost访问的时候ip显示为0:0:0:0:0:0:0:1,这代表的是本地,可以将localhost换成127.0.0.1时,显示的是当前访问的ip地址

    用Java来获取访问者真实的IP地址

    在现代Web开发中,获取客户端的真实IP地址是非常重要的。这不仅有助于网站统计分析,还可以用于安全控制、地域限制等功能。然而,在使用如Apache、Squid等反向代理服务器的情况下,直接使用`request.getRemoteAddr()...

    java脚本开发根据客户IP获取IP的具体地理位置信息

    在Java脚本开发中,获取客户IP地址并进一步获取其具体地理位置信息是一项常见的需求,尤其在网站分析、个性化推荐和安全防护等领域。本教程将详细讲解如何实现这一功能。 首先,我们需要理解IP地址与地理位置之间的...

    idea,java获取ip地址

    在Java Web开发中,IntelliJ IDEA是一款广泛使用的集成开发环境(IDE),它为Java程序员提供了强大的代码编辑、调试和项目管理功能。当我们构建一个基于Servlet的Web应用程序时,有时需要获取访问用户的真实IP地址,...

    纯JAVA实现修改本地IP(swing界面版)

    这个类提供了解析、比较和获取IP地址相关信息的方法。在我们的程序中,我们需要用到这些方法来读取、设置和验证输入的IP地址。 4. **IO流**: `java.io`包中的IO流用于读写数据。在这个应用中,IO流可能被用来保存...

    java开发基于百度API,淘宝API和腾讯IP库(qqwry.dat),通过IP获取区域城市位置,经纬度获取城市地址,城市地址获取经纬度等信息实例

    该demo有多个JAVA实例,分别是基于:百度API,淘宝API和腾讯提供的IP库(qqwry.dat),开发的一个简单直接可以使用的web应用程序,通过Eclipse导入即可在Main方法中测试; 1.百度API已经提供测试ak密钥,实例中有:a....

    Java获取google天气信息,且能根据ip地址获取所属地天气

    在Java编程领域,获取外部数据,如天气信息和IP地址对应的城市信息,是常见的需求。本项目主要涉及了使用Java从Google获取天气信息,并通过IP地址查找...理解并掌握这些技术,对于提升Java Web开发能力具有重要意义。

    获取客户端IP地址所需Jar包

    在开发Web服务时,有时我们需要获取调用服务的客户端的IP地址,以便进行日志记录、权限控制或者地理位置分析等操作。"获取客户端IP地址所需Jar包"这个主题,主要涉及的是在使用Apache Axis框架发布Web服务时,如何...

    java获取ip地址示例

    在Java Web开发中,获取客户端IP地址是一项常见的需求,但这个过程可能会因网络架构的不同而变得复杂。在没有使用反向代理服务器的情况下,通过HttpServletRequest对象的`getRemoteAddr()`方法可以直接获取到客户端...

    Java获取用户访问IP及地理位置的方法详解

    在Java Web开发中,有时我们需要获取用户访问时的IP地址以及他们的地理位置信息,这在诸如数据分析、用户行为追踪或个性化推荐等场景下尤其重要。本文将详细讲解如何使用Java实现这一功能,特别是结合百度地图开放...

    Java网络编程原理与JSP Web开发核心技术

    Java网络编程提供了底层的网络通信能力,JSP和Web开发则利用这些能力构建用户友好的Web应用程序。这些技能的掌握对于成为一位全能的Java Web开发者至关重要。 总的来说,Java网络编程原理与JSP Web开发核心技术的...

    java获取客户端IP及IP归属地

    4. **使用Java API获取IP** 在Servlet环境中,可以使用`HttpServletRequest`对象的`getRemoteAddr()`方法获取客户端IP,但请注意这可能只返回代理服务器的IP,而非最终用户。 5. **第三方库集成** - MaxMind ...

    获取系统IP地址浏览器java

    1. **InetAddress** 类:这是Java中最核心的网络地址类,提供了获取IP地址和主机名的方法。 - `getLocalHost()`:返回本地主机的`InetAddress`对象,通常包含本机的主机名和IP地址。 - `getByName(String host)`...

Global site tag (gtag.js) - Google Analytics