JS获取访客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
JS获取访客IP+判断归属地+自动跳转的更多相关文章
- JS获取访客IP进行自动跳转
因业务需要进行地区判断跳转指定站点,下面是我个人实现的办法,分享给大家,仅供参考,切勿做非法用途 第一步,获取IP并判断归属地 直接使用搜狐的IP库查询接口 <script type=" ...
- 获取访客IP、地区位置信息、浏览器、来源页面
<?php //这个类似用来获取访客信息的 //方便统计 class visitorInfo { //获取访客ip public function getIp() { $ip=false; if ...
- PHP获取访客IP、地区位置信息、浏览器、来源页面
不多说了,每个方法都注释了,可以直接用: <?php //这个类似用来获取访客信息的 //方便统计 class visitorInfo { //获取访客ip public function ge ...
- 利用PHP获取访客IP、地区位置、浏览器及来源页面等信息
这篇文章主要介绍了利用PHP获取访客IP.地区位置.浏览器及来源页面等信息的相关资料,文中给出了详细的示例代码供大家参考学习,对大家具有一定的参考借鉴价值,需要的朋友们下面来一起看看吧. 前言 本文中 ...
- PHP获取访客ip、系统、浏览器等信息[转]
1.获取访客操作系统信息 <?php function GetOs() { if (!empty($_SERVER['HTTP_USER_AGENT'])) { $OS = $_ ...
- Wordpress用文件记录访客 IP和访问量
1.记录访问量,显示访客IP [php原码] <?php /*打开文件用于记录访问量,如果文件不存在自动创建*/ $counterFile = "counter.txt"; ...
- 安装mod_rpaf让apache获取访客真实IP
安装mod_rpaf让apache获取访客真实IP 安装mod_rpaf让apache获取访客真实IP 作者:朱 茂海 /分类:Apache 字号:L M S mod_rpaf是apache ...
- .NetCore.RazorPages 获取访客的公网IP与局域网IP
dotnet.core 获取访客的公网IP与局域网IP 现在奉上代码 public void OnGet() {var ip = Content(HttpContext.Connection.Remo ...
- 在线获取访客QQ号码的原理及实现方法
原文地址:http://www.piaoyi.org/network/get-qq-haoma-js.html 正 文: 最近,飘易收到不少在线获取网站访客QQ号码的促销推广邮件,有不少商用网站挖掘了 ...
随机推荐
- [NOIP赛前冲刺第一期]初赛基础知识归纳
关于计算机 1.CPU 中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心(Control Unit).它的功能 ...
- TTL和COMS电平匹配以及电平转换的方法
一.TTL TTL集成电路的主要型式为晶体管-晶体管逻辑门(transistor-transistor logic gate),TTL大部分都采用5V电源.1.输出高电平Uoh和输出低电平UolUoh ...
- springmvc 配置之 mvc:default-servlet-handler
配置dispatchServlet的方法一般是: <servlet> <servlet-name>mvc-servlet</servlet-name> <se ...
- MariaDB与MySQL
一.MariaDB安装部署 tar zxvf mariadb-5.5.31-linux-x86_64.tar.gz mv mariadb-5.5.31-linux-x86_64 /usr/local/ ...
- java面向对象总结(一)
1. 对象的概念及面向对象的三个基本特征 面向对象的三大核心特性 面向对象开发模式更有利于人们开拓思维,在具体的开发过程中便于程序的划分,方便程序员分工合作,提高开发效率.面向对象程序设计有以下优点. ...
- MyBatis笔记(一) 最简单的select
小白学习MyBatis的第一天,学习资料包括MyBatis3的官方文档,以及孤傲苍狼大佬的博客.这里先致敬大佬. · 首先,什么是MyBatis? 引用官网的一段话,“MyBatis 是一款优秀的持久 ...
- 如何在Qt中使用自定义数据类型
这里我们使用下面这个struct来做说明(这里不管是struct还是class都一样): struct Player { int number; QString firstName; QString ...
- xtrabackup 2.4.3 BUG
用XtraBackup对备份集进行apply log 的时候,卡在 xtrabackup 版本:2.4.3 InnoDB: Waited for 1535930 seconds for 128 pen ...
- 算法(第四版)C# 习题题解——1.3.49 用 6 个栈实现一个 O(1) 队列
因为这个解法有点复杂,因此单独开一贴介绍. 那么这里就使用六个栈来解决这个问题. 这个算法来自于这篇论文. 原文里用的是 Pure Lisp,不过语法很简单,还是很容易看懂的. 先导知识——用两个栈模 ...
- Java之冒泡算法实现
算法说明:给一列数组排序,当前一个元素大于后一个元素则交换这两个元素的顺序,直到最大的数字移动到最右边,以剩下n-1元素组成的数组当做最新数组,重复交换过程,直到这个数组全部处理完毕.传的参数一个是数 ...