`
leeqoo
  • 浏览: 123966 次
社区版块
存档分类
最新评论

获得请求路径 和 获取用户IP

    博客分类:
  • java
 
阅读更多
	public static String getRequestPath(HttpServletRequest request) {
		String requestPath = request.getRequestURI() + "?" + request.getQueryString();
		if (requestPath.indexOf("&") > -1) {// 去掉其他参数
			requestPath = requestPath.substring(0, requestPath.indexOf("&"));
		}
		requestPath = requestPath.substring(request.getContextPath().length());// 去掉项目路径
		return requestPath;
	}



public static String getIpAddr(HttpServletRequest 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.getRemoteAddr();
		}
		if (ip.equals("0:0:0:0:0:0:0:1")) {
			ip = "本地";
		}
		return ip;
	}


分享到:
评论

相关推荐

    故障处理-用户无法获取IP地址.pdf

    3. 排查DHCP报文交互过程:在用户端、DHCP服务器端以及连接两者的网络设备中,DHCP报文的交互过程可能中断,造成无法获取IP地址。排查时,应当关注DHCP Discover、Offer、Request、Acknowledge这四个主要报文交换...

    IP地址段的过滤,限制ip,限制主机访问

    `InetAddress.getByName(ip)`可将字符串形式的IP转换为InetAddress对象,然后使用`getHostAddress()`获取IP字符串,便于比较。 7. **IP子网掩码**:子网掩码用于确定IP地址中的网络部分和主机部分,对于IP段过滤,...

    Springboot过滤器禁止ip频繁访问功能实现

    在这个方法中,我们可以获得HttpServletRequest和HttpServletResponse对象,从而可以获取用户的ip地址、请求的url等信息。 在我们的示例代码中,我们使用了ConcurrentHashMap来存储被限制的ip信息。在doFilter方法...

    获取ip和解析ip地区工具包

    在IT行业中,获取IP地址和解析IP对应的地理位置是一项常见的需求,尤其在网络安全、数据分析和用户定位服务中。本文将详细讲解如何使用Java实现这一功能,以及一个名为"handsome获取ip+地区工具包"的资源。 首先,...

    ASP.NET获取IP的方法

    此外,还可以通过查询主机名来间接获取IP地址: ```csharp string strHostName = System.Net.Dns.GetHostName(); string clientIPAddress = System.Net.Dns.GetHostAddresses(strHostName).GetValue(0).ToString();...

    IIS日志中获取访客真实IP的解决方案

    然而,在使用负载均衡器(如HAProxy)的情况下,直接从后端服务器(例如运行IIS的服务器)的日志文件中获取客户端的真实IP可能会变得复杂,因为请求经过负载均衡器后,原始IP信息可能被更改或丢失。本文将详细介绍...

    java实现根据ip地址获取地理位置

    在这个示例中,`getIpInfoBySina`方法首先从属性文件中获取新浪的IP查询URL,然后构造请求路径,并使用`HttpClient`发送HTTP请求。响应数据通常以JSON格式返回,我们需要解析JSON并提取出省份、城市、区县和ISP信息...

    PHP根据IP获取所在城市

    本文将详细讲解两种方法,分别是利用新浪的IP接口和使用纯真IP库(QQWry.Dat)来获取IP对应的城市信息。 首先,让我们来看看如何通过新浪的IP接口来获取城市信息。新浪提供了一个公开的API,允许开发者通过HTTP请求...

    handsome获取ip+地区工具包

    总之,"handsome获取ip+地区工具包"提供了一种便捷的方式来获取和解析客户端IP地址,并结合纯真IP数据库提供地区信息。这对于需要进行地域性服务或数据分析的Java开发者来说,是一个非常实用的工具。

    C# .net 如何根据访问者IP获取所在地区【初学者的 精华】

    本教程将指导初学者如何通过C# .NET实现这一功能,利用QQ纯真IP数据库来获取IP与地理位置的对应关系。 首先,我们需要理解基本的网络概念。HTTP协议是互联网上应用最为广泛的一种网络协议,它在客户端(如浏览器)...

    php版通过IP获取省会功能

    // 获取IP地址,实际应用中可能从HTTP请求头获取 $ip = $_SERVER['REMOTE_ADDR']; // 查询IP信息 try { $record = $reader->city($ip); } catch (Exception $e) { // 错误处理 die('Error: ' . $e->getMessage()...

    根据ip获取对应城市.rar

    描述中提到“java根据个人ip,获取ip对应的城市”,确认了这一点,并且强调它还支持国外的IP地址。此外,作者提供了一个博客链接,用于解释该项目的具体应用。 在标签“java ip获取城市”中,我们可以理解到这个项目...

    Java利用Request请求如何获取IP地址对应的省份、城市详解

    本篇文章将详细介绍如何在Java中利用HttpServletRequest对象(Request请求)获取IP地址以及如何使用GeoLite2 City库来获取对应的省份和城市。 首先,获取IP地址的方法是通过HttpServletRequest对象提供的方法。在...

    Python-FlaskLimiter是一个Flask的扩展库它可以根据访问者的IP限制其访问频率次数等

    通过限制每个IP地址的请求速率,Flask-Limiter帮助确保资源的有效利用,保护服务器免受恶意或过度频繁的请求。 在深入探讨Flask-Limiter的使用方法之前,我们先理解Flask,这是一个轻量级的Python Web开发框架。它...

    获得本机IP地址

    学习这些源代码的关键在于理解Delphi的组件和类库(如Winsock用于网络通信)、事件处理机制(如TButton的Click事件)、以及如何访问系统服务(如GetAdaptersAddresses()函数获取IP地址)。同时,注意观察代码如何...

    易语言建立HTTP连接请求

    GET请求用于获取资源,POST请求用于提交数据。在易语言中,可以使用`Http创建请求`命令创建一个HTTP请求对象,然后通过`Http发送请求`命令发送。例如: ```易语言 .请求句柄 = Http创建请求(.连接句柄, “/path”,...

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

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

    服务器采集消费者ip

    这时,"x-forward-for"头信息就显得尤为重要,因为它会记录下请求路径中的最后一个非代理客户端的IP地址,也就是用户的实际IP。 "2.png、3.png、1.png"可能是展示如何配置或解析"X-Forwarded-For"头的步骤截图,而...

    c实现从IP层截取数据包的中获得请求页的网址

    3. **IP和TCP解析**:使用`pcap_pkthdr`结构体获取数据包的基本信息,如时间戳、长度等。然后,使用`pcap_pkthdr`的caplen字段获取有效载荷,也就是IP数据包的内容。使用`pcap_next_ex()`函数可以获取更详细的包信息...

    spring,获取IP精选.doc

    Spring 提供了多种方式来获取请求中的 IP 地址,这通常涉及到 Web 开发环境中的网络通信。 首先,我们来看一下 `application.properties` 文件。这是 Spring Boot 应用的配置中心,它允许开发者定义应用的行为。...

Global site tag (gtag.js) - Google Analytics