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

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

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

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

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

返回的数据是

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

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

第二步,判断归属地

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

1
returnCitySN.cname.indexOf('上海')==-1

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

1
returnCitySN.cname.indexOf('上海')!=-1

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

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

1
window.location.href='URL'

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

至此,完整的代码如下:

1
2
3
4
5
6
<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

posted @   平底斜  阅读(16200)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
点击右上角即可分享
微信分享提示