Java 获取ip地址、省份城市、城市ip
1、获取ip :使用request.getHeader("x-forwarded-for")获取真实IP,x-forwarded-for的值并不止一个,而是一串IP值,获取为空时,使用request.getRemoteAddr()、getHeader("Proxy-Client-IP")、getHeader("WL-Proxy-Client-IP")方法进行获取
1:@ResponseBody
@RequestMapping(value="/getipone", produces="application/json")
public String getRemortIP(HttpServletRequest request) { if (request.getHeader("x-forwarded-for") == null) { System.out.println("request.getRemoteAddr();" + request.getRemoteAddr());return request.getRemoteAddr(); } System.out.println("request.getHeader(x-forwarded-for):" + request.getHeader("x-forwarded-for"));return request.getHeader("x-forwarded-for");
}2:@ResponseBody
@RequestMapping(value="/getiptwo", produces="application/json")
public String getRemortIP(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(); } System.out.println("ip-------" + ip);return ip;
}
2、通过ping命令判断是否离线 ,使用run.exec()进行ping命令连接某个网站,根据返回的结果进行判读是否已经离线
/** * 通过ping命令判断是否离线 * @return */
public static boolean offLine() { Runtime run = Runtime.getRuntime(); try { Process process = run.exec("ping www.hao123.com"); InputStream s = process.getInputStream(); BufferedReader bis = new BufferedReader(new InputStreamReader(s)); String str = bis.readLine(); while (str != null) { if (str.startsWith("Reply from")) { return false; } str = bis.readLine(); } process.waitFor(); } catch (IOException ex) { Logger.getLogger(SyncTime.class.getName()).log(Level.SEVERE, null, ex); } catch (InterruptedException ex) { Logger.getLogger(SyncTime.class.getName()).log(Level.SEVERE, null, ex); } return true;
}
3、获取sessionId
String sessionId=request.getSession().getId();
System.out.println("sessionId = " + sessionId);
4、获取服务器系统时间
String date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(Calendar.getInstance().getTime());
System.out.println("date = " + date);
5、获取当前链接地址
String requestUrl = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + request.getContextPath() + request.getServletPath();
System.out.println("当前链接地址:" + requestUrl);
6、获取前一页链接地址
System.out.println("前一页链接地址:" + request.getRequestURI());
7、省份城市、城市ip
jsp:
//js使用搜狐接口获取当前城市ip、城市名称,传输到java中
$(function () {if (navigator.onLine) {$.getScript('http://pv.sohu.com/cityjson', function (_result) {//搜狐接口if (returnCitySN.cip != '') {cityip = returnCitySN.cip;cityName = returnCitySN.cname;$.post("${ctx}/LoginServer/sessioncity.do", {cityip:cityip,cityName:cityName}, function () {});} else {console.log("网络出错,无法定位到当前城市")}});} else {console.log("暂无网络服务");}
})java:
/*** session设置城市ip和城市省份* @param cityip 城市ip* @param cityName 城市省份* @param request 无返回*/
@ResponseBody
@RequestMapping(value="/sessioncity", produces="application/json")
public void city(String cityip, String cityName, HttpServletRequest request) {HttpSession session = request.getSession();session.setAttribute("cityip", cityip);session.setAttribute("cityName", cityName);
}HttpSession session = request.getSession();
System.out.println("省份城市:" + session.getAttribute("cityName"));
System.out.println("城市ip:" + session.getAttribute("cityip"));
8、获取浏览器信息
System.out.println("获取浏览器信息:" + request.getHeader("User-Agent"));
9、操作系统名称
//获取系统属性值
Properties props=System.getProperties();
//操作系统名称
String osName = props.getProperty("os.name");
System.out.println("操作系统名称:" + osName);
Java 获取ip地址、省份城市、城市ip相关推荐
- 获取客户端外网IP,省份,城市,运营商
/// <summary> /// 获取客户端外网IP,省份,城市,运营商 /// 2012年12月18日 15:07 /// </summary> ...
- php 通过坐标获取省市,通过php根据地理坐标来获取国家、省份、城市,及周边数据类...
功能:当App获取到用户的地理坐标时,可以根据坐标知道用户当前在那个国家.省份.城市,及周边有什么数据. 原理:基于百度Geocoding API 实现,需要先注册百度开发者,然后申请百度AK(密钥) ...
- java判断内网ip_Java判断IP地址为内网IP还是公网IP的方法
本文实例讲述了Java判断IP地址为内网IP还是公网IP的方法.分享给大家供大家参考.具体分析如下: tcp/ip协议中,专门保留了三个IP地址区域作为私有地址,其地址范围如下: 10.0.0.0/8 ...
- QQ小游戏、微信小游戏获取ip地址,并通过ip得到所在地区
QQ小游戏.微信小游戏获取用户的ip地址,并通过ip得到所在地区 问题解决了就点赞,还有疑问就留言或是私我,臭弟弟 记得要把合法域名加进去,或者编译的时候不校验合法域名等,不然会报错 如果是后端屏蔽, ...
- Ip2region 离线IP地址定位库和IP定位数据管理框架
老板要我做一个 IP 属地功能!我摸索了 1 天,搞定了.♥️ 细心的朋友应该会发现,最近,继新浪微博之后,头条.腾讯.抖音.知乎.快手.小红书等各大平台陆陆续续都上线了"网络用户IP地址显 ...
- php网站服务器ip地址吗,php 服务器ip地址吗
php 服务器ip地址吗 内容精选 换一换 LAMP是由Linux.Apache.MySQL和PHP 建立的web应用平台.本文档指导用户使用华为云市场镜像"LNMP平台(CentOS7.4 ...
- linux服务器如何更改ip,Linux修改IP地址,CentOS设置系统IP地址
刚安装完系统的LINUX的IP地址是通过DHCP方式自动获取IP的,但有时候我们会需要自己制定固定的IP地址,这样对于很多刚刚接触linux的朋友来说,如何设置linux系统的IP地址,作为第一步,下 ...
- 科脉系统服务器ip地址,科脉服务器ip地址怎么查
科脉服务器ip地址怎么查 内容精选 换一换 IPoIB(IP over IB)是在InfiniBand协议上提供IP协议进行数据传输的能力.对于使用SUSE操作系统的H2型.HL1型云服务器,如需使用 ...
- 改ip地址的软件 换ip地址的方法
改变IP地址的方法 在网络通信中,IP地址是标识计算机和其他网络设备的唯一标识符.有时候,我们需要更改IP地址以满足特定的需求或解决网络问题.在本文中,我将介绍几种常见的方法来改变IP地址. 方法一: ...
- 修改用友服务器ip地址,用友服务器ip地址更换
用友服务器ip地址更换 内容精选 换一换 若用户想要更换Ubuntu服务器的IP地址,则Mind Studio安装使用的IP地址也要随之更换,方法如下:如果env.conf文件中的IP配置为Ubunt ...
最新文章
- 如何上传应用到百度应用(图解攻略)
- Quorum企业以太坊环境搭建教程
- 什么是索引?为什么要建立索引?并举例说明.(以某一具体的DBMS为例)
- python模拟postman发https请求_【接口测试】Postman入门01-特点和简介
- opencv python3 找图片色块_Python 图像处理 OpenCV (3):图像属性、图像感兴趣 ROI 区域及通道处理...
- 【操作系统】实验 设计一个按优先权调度算法实现处理器调度的程序
- Adobe全系软件下载安装工具 CCMaker 1.3.6
- 中超联赛提交函数的c语言,C语言文件操作(File)
- mybatis 不生效 参数_Spring Boot(七):你不能不知道的Mybatis缓存机制
- 文献管理三剑客之Mendeley
- 从单体迈向Serverless的避坑指南
- 网页设计语言html做思维导图,HTML思维导图
- iPhone12、iPhone12 Pro、iPhone12 Max、iPhone12 Pro Max有几个颜色
- pytorch系列教程(四)-自定义损失函数
- linux下ss工具简介
- Qt QNetworkAccessManager请求返回reply内存泄漏
- OpenGL 3.0,等得花儿都谢了
- 成功的经验 失败的教训
- AutoCAD AutoLisp 脚本编写
- s3c6410开发板NFS挂载linux
热门文章
- vue项目开发 实现自定义Transfer穿梭框效果(结合el-tree)
- 如何摆放PCB元器件?(建议收藏)
- 光大控股新经济领投智能眼镜研发公司nreal,推动AR、MR“技术-产品-应用”生态体系建设...
- NDI技术应用|外部SDI/HDMI信号如何输入电脑进行推流?
- DEBERTA: DECODING-ENHANCED BERT WITH DISENTANGLED ATTENTION
- Golang中context实现原理剖析
- orig.tar.gz和diff.gz文件使用的例子
- ​数学家时枝正的玩具人生
- CANopen补充--主站检测节点是否在线
- 蓝桥杯Web组备赛笔记3