栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何确定通过哪个IP地址访问了我的网站?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何确定通过哪个IP地址访问了我的网站?

使用接口ServletRequest中的方法getRemoteAddr()或接口HttpServletRequest中的方法getHeaders():

HttpServletRequest httpRequest = (HttpServletRequest) request;String userIpAddress = httpRequest.getHeader("X-Forwarded-For");

使用方法getRemoteAddr有一个警告:

当然,您可以使用该方法,并且在一般情况下,您将获得客户端的IP。但是,如果用户位于代理之后,则该方法无用。在这种情况下,您将获得代理服务器的IP地址,而不是客户端。但是代理可以在特殊的

HTTP
标头中包含发出请求的客户端IP
。因此要检索real-client-IP调用方法
getHeader("X-Forwarded-For")

JSP中的示例用法:

在使用JSTL的会话中使用IP地址的设置值:

<c:set var="userIp" value="${requestScope.header('x-forwarded-for')}" scope="session" />

然后在方便的位置从会话中获取此值。

在JSP中,您可以将

<c:out value="${sessionScope.userIp}"/>
或在servlet中用作
session.getAttribute('userIp');

请阅读文档:

java.lang.String getRemoteAddr() 返回发送请求的客户端或 最后一个代理 的Internet协议(IP)地址。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/417243.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号