本文介绍如何利用 JavaScript 获取访问者的 IP 地址、所在地区以及当前使用的浏览器信息。通过调用搜狐城市接口获取公网 IP 和地理位置数据,并结合 navigator.userAgent 属性解析浏览器类型与版本,适用于异地登录验证及用户行为数据分析等场景。
获取访问者信息的实际应用价值
在 Web 开发中,使用 JavaScript 获取访问者的 IP 地址、所在地区以及当前操作的浏览器信息具有重要的实际意义。
这类数据的应用场景十分广泛,例如用于实现异地登录的安全校验,或者对用户常用的浏览器类型进行统计分析,以便优化前端兼容性和用户体验。
具体的实现代码如下所示,主要涉及 HTML 结构及核心脚本逻辑。
文件名为 index.html,用于承载页面内容与脚本。
基于搜狐接口与 UA 解析的实现代码
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Document</title>
<script src="http://pv.sohu.com/cityjson?ie=utf-8"></script>
<script type="text/javascript">
document.write('IP地址:' + returnCitySN["cip"] + ', CID:' + returnCitySN["cid"] + ', 地区:' + returnCitySN["cname"]+",浏览器版本:"+getBrowserInfo());
function getBrowserInfo()
{
var agent = navigator.userAgent.toLowerCase() ;
var regStr_ie = /msie [\d.]+;/gi ;
var regStr_ff = /firefox\/[\d.]+/gi
var regStr_chrome = /chrome\/[\d.]+/gi ;
var regStr_saf = /safari\/[\d.]+/gi ;
//IE
if(agent.indexOf("msie") > 0)
{
return agent.match(regStr_ie) ;
}
//firefox
if(agent.indexOf("firefox") > 0)
{
return agent.match(regStr_ff) ;
}
//Chrome
if(agent.indexOf("chrome") > 0)
{
return agent.match(regStr_chrome) ;
}
//Safari
if(agent.indexOf("safari") > 0 && agent.indexOf("chrome") < 0)
{
return agent.match(regStr_saf) ;
}
}
</script>
</head>
<body>
</body>
</html>
运行上述代码后,页面将展示如下效果:

以上即为通过 JavaScript 获取访问者 IP、地区及浏览器信息的完整方案,希望能为相关开发工作提供参考与帮助。