欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JS获取访客IP+判断归属地+自动跳转

程序员文章站 2022-03-03 12:26:12
由于公司业务需要,需要对网站特定地区的访客进行不同跳转。比如,上海的用户跳转到“shanghai.url.cn”,南京的用户跳转到“nanjing.url.cn”。下面就是我的实现方法,分享出来,顺便做个记录。 第一步,获取IP并判断归属地 直接使用搜狐的IP库查询接口 返回的数据是 接下来,直接对 ......

由于公司业务需要,需要对网站特定地区的访客进行不同跳转。比如,上海的用户跳转到“shanghai.url.cn”,南京的用户跳转到“nanjing.url.cn”。下面就是我的实现方法,分享出来,顺便做个记录。

第一步,获取ip并判断归属地

直接使用搜狐的ip库查询接口

<script type="text/javascript" src="http://pv.sohu.com/cityjson?ie=utf-8"></script> 

返回的数据是

var returncitysn = {"cip": "222.94.148.132", "cid": "320100", "cname": "江苏省南京市"};

接下来,直接对‘returncitysn’操作

第二步,判断归属地

我用的indexof(),如果字符串中包含特定字符,返回索引值;如果字符串中不存在特定字符,返回值‘-1’

returncitysn.cname.indexof('上海')==-1

这里我是要对上海以外的其他城市进行操作。如果需要对上海这座城市的访客进行操作:

returncitysn.cname.indexof('上海')!=-1

第三步,自动跳转到指定页面

不要问我这是干啥,就是对特定地区的访客进行页面跳转而已。

window.location.href='url'

这里url就是要跳转到的目标网址

至此,完整的代码如下:

<script type="text/javascript" src="http://pv.sohu.com/cityjson?ie=utf-8"></script> 
<script type="text/javascript">
if (returncitysn.cname.indexof('上海')==-1){
window.location.href='要跳转的url'
}
</script>

为了隐蔽,可以对js加密,加密地址:https://www.sojson.com/javascriptobfuscator.html