百摩网
当前位置: 首页 生活百科

java得到客户端ip地址吗(java如何实现获取客户端ip地址)

时间:2023-07-22 作者: 小编 阅读量: 1 栏目名: 生活百科

java如何实现获取客户端ip地址java实现获取客户端ip第一步:我们先来定义一个工具类,专门用于封装ip相关的方法类packagecom.example.review.util;importorg.apache.commons.l。

java得到客户端ip地址吗?第一步:我们先来定义一个工具类,专门用于封装ip相关的方法类,今天小编就来聊一聊关于java得到客户端ip地址吗?接下来我们就一起去研究一下吧!

java得到客户端ip地址吗

java实现获取客户端ip

第一步:我们先来定义一个工具类,专门用于封装ip相关的方法类。

package com.example.review.util;import org.apache.commons.lang3.StringUtils;import javax.servlet.http.httpervletRequest;/** * ip相关工具类 * * @Author luoYong* @Date 2022-03-30 17:16*/public class IpUtils {}复制代码

第二步:也就是此期教学的核心所在了,那究竟怎么获取客户端ip呢?我也就不卖关子了。

通常获取客户端的IP地址都是通过 request.getRemoteAddr() ,对吧,但是你有想过么,如今基本系统都会进行域名代理等,比如通过 Apache,Squid 等反向代理软件,使用getRemoteAddr() 根本无法再获取到客户端的真实 IP 地址了。

为什么加了代理就获取不到了呢?这是因为在客户端和服务之间增加了中间代理,因此服务器是无法直接拿到客户端的 IP地址,服务器端应用也无法直接通过转发请求的地址返回给客户端,基本这种获取方式就直接被pass掉了。

如果还不理解,可以看下下边的代理流程示意图,你就会理解啦。

如果只局限系统不做代理,那肯定是ok的。那系统基本不可能不做代理的呀,所以咋办?别着急,我会告诉你怎么玩儿,如果使用了我的教学方法还获取不到,请你来揍我,好吧?

如下是具体获取客户端ip方法类:仅供大家参考。

/**** 获取客户端ip地址* @param request*/public static String getIP(final httpervletRequest request) throws Exception {if (request == null) {throw (new Exception("getIpAddr method httpervletRequest Object is null"));}String ipStr = request.getHeader("x-forwarded-for");if (StringUtils.isBlank(ipStr) || "unknown".equalsIgnoreCase(ipStr)) {ipStr = request.getHeader("Proxy-Client-IP");}if (StringUtils.isBlank(ipStr) || "unknown".equalsIgnoreCase(ipStr)) {ipStr = request.getHeader("WL-Proxy-Client-IP");}if (StringUtils.isBlank(ipStr) || "unknown".equalsIgnoreCase(ipStr)) {ipStr = request.getRemoteAddr();}// 多个路由时,取第一个非unknown的ipfinal String[] arr = ipStr.split(",");for (final String str : arr) {if (!"unknown".equalsIgnoreCase(str)) {ipStr = str;break;}}//目的是将localhost访问对应的ip 0:0:0:0:0:0:0:1 转成 127.0.0.1。return ipStr.equals("0:0:0:0:0:0:0:1") ? "127.0.0.1" : ipStr;}复制代码

需要注意的是,自己本地开发,基本都是通过使用 [ localhost ]标准主机名来进行接口访问的,对吧,那么你就会特别好奇,数据库记录日志 ip 这一栏,ip有的竟然是 0:0:0:0:0:0:0:1。

为什么获取到的ip是这样呢?这是因为 0:0:0:0:0:0:0:1 是[ ipv6 ]的表现形式,对应[ ipv4 ]来说相当于127.0.0.1,也就是本机。所以我在最后通过三目运算强行把ipv6地址转成了ipv4地址。这样讲大家可否能理解?不理解就回头好好恶补一下计算机网络,这也不是不可以。

如下分别是通过 localhost 及实际ip分别进行接口访问,数据库保存的操作日志记录。

附上获取本地ip数据库截图:

    推荐阅读
  • 多色玫瑰馒头的做法(彩色玫瑰馒头简单做法分享)

    多色玫瑰馒头的做法食材用料:普通面粉300克、酵母粉3克、红曲米粉2克、温水150克、白糖5克。醒发半小时后看面团成细腻的蜂窝状即可。面团再次揉匀,搓成长条状。用手一个个的按扁,按的时候要口朝上下。五个或者是六个一组从下往上卷起。做好的玫瑰花放入笼屉上,醒发十分钟。凉水上锅十分钟上汽以后蒸十五分钟,一共25分钟,然后闷两三分钟开盖即可。

  • 冰糯种和糯冰种区别 冰糯种和糯冰种区别在哪

    2、种水不同:冰糯种的水头很好,质地细腻,颜色均匀纯正,而糯冰种的颜色中还带有其他的颜色,没有冰糯种纯正。

  • 好吃的披萨饼原来这么做的呀(简单美味的中式披萨饼)

    接下来我们就一起去研究一下吧!好吃的披萨饼原来这么做的呀先我们要准备好面粉和鸡蛋。把胡萝卜擦成丝放在面糊中。)再把洋葱和青椒切成小碎丁。把准备好的面糊中放入少量的精盐和味精。把和好的面糊摊在电饼铛上。喜欢吃鸡蛋的朋友可以在上面再打入一个鸡蛋。在电饼铛里两面都要煎出金黄色。我们简单又美味的中式披萨饼就要做好了。把美味的披萨饼切成三角形放在盘子里。在早上匆忙的时间里,我们也能够吃到美味的披萨饼。

  • 蕨菜怎么腌制才脆嫩(冬日的新鲜货蕨菜的腌制与储藏)

    满缸后,其上覆3厘米的盐层,达到盐量为蕨菜重量的30%。出口蕨菜干的标准是完全晒干,不发霉,无杂质,用手揉搓,发软打卷,无老化硬梗。将清洗整理好的蕨菜投入沸水中烫7~8分钟。同时使干蕨菜回软以便压块或包装。保鲜及贮存蕨菜需高温煮熟后用纯净水装袋。因蕨菜内含果胶类物质,受热会产生果胶酶,与金属离子相互作用形成凝胶状态的果胶酸钙,从而维持脆性。适当添加其它调味料后用柠檬酸调PH值至6左右。

  • 龙岩是个什么样的城市(福建龙岩是个怎么样的城市)

    全市获评国家级生态乡镇57个,省级以上生态乡镇119个,占总数的94.4%。长汀成为全省首个国家水土保持生态文明县。龙岩市森林覆盖率达78%,长达41年居福建省第一,全国地级市排名第三。负氧离子能促进人体新陈代谢、预防流感、增强机体抗病能力。集中式生活饮用水源中心城区各集中式饮用水源地均达到国家相应的地表水和地下水水源地水质要求,达标率100%。

  • 戴是什么结构的字(右上包围结构)

    下面更多详细答案一起来看看吧!戴是什么结构的字戴字形结构:右上包围结构。拼音:dài,部首:十,笔画:17,繁体:戴,五笔:FALW。把东西加在头、脸、颈、胸、臂、手等处:戴帽子、戴眼镜、戴红领巾、戴手套。头上顶着;承当着:披星戴月、戴罪立功。拥护;尊敬,比如爱戴。配戴、爱戴、拥戴、穿戴、佩戴。

  • 拼多多连续包月怎么退(拼多多多久包退)

    拼多多成立于2015年9月,是一家专注于C2B拼团的第三方社交电商平台。针对此行为,平台已第一时间修复漏洞,并正对涉事订单进行溯源追踪。同时我们已向公安机关报案,并将积极配合相关部门对涉事黑灰产团伙予以打击。1月21日,上海警方已成立专案组,并依据“财产保全”的相关规定,对涉事订单进行批量冻结。

  • 木偶奇遇记评语(对木偶奇遇记的评价)

    以下内容大家不妨参考一二希望能帮到您!木偶奇遇记评语这篇童话,通过皮诺曹的种种曲折、离奇的经历,表现小木偶热爱正义、痛恨邪恶、天真纯洁的品质,教育儿童要抵御种种诱惑,做一个诚实、听话、爱学习、爱劳动,并能帮助父母的好孩子。作者成功地塑造了小木偶的形象。他聪明、善良、顽皮而又任性,他的故事给孩子们以有益的教诲和艺术的感染。

  • 梦见去世的人讲鬼故事(民间故事员外死后)

    邴员外恶人先告状,跑到衙门,状告山二郎行凶伤人。差役们为了在邴员外面前讨好卖乖,暗下毒手,竟然将山二郎活活地打死在大堂上。县令将山老汉叫来,责骂一顿,令他将山二郎的尸体拖回家,好生安葬,此事不了了之。山二郎得知邴员外到了,找上门来,每天将他毒打一顿,而且将他的舌头割掉了,以免他投诉。山老汉感激涕零,跪在邴小员外的脚下表示感谢。

  • 习惯了一个人就接受不了任何人(你对习惯的力量一无所知)

    火车发车前,站台上的工作人员会大声宣布“一切安全”。这个过程被叫做“指差确认”,目的是为了减少人为的失误。指差确认减少了85%的错误,而且还让事故发生率降低了30%。有实验证明,赌徒在下注之前,体内的多巴胺含量会猛增,但赌赢后反而不会。结果,ABC周四晚上的收视率暴涨。期末结果出人意料,所有的优秀作品都来自“数量组”的学生。直到1891年箭牌口香糖的推出,口香糖的销量开始飞速增长。