Js根据Ip地址自动判断是哪个城市

JavaScript05

Js根据Ip地址自动判断是哪个城市,第1张

如果只是写浏览器端js的话,需要一个庞大的js问价的ip数据库

// 数据库

var database = {

'123.123.123.123': {

province: '北京市',

city: '北京市',

operators: '联通',

},

'123.123.123.124': {

province: '北京市',

city: '北京市',

operators: '联通',

}

// ...

}

// 主函数

var inquireIP = function (ip) {

if(database[ip]) {

return database[ip]

}else{

console.log('找不到ip:' + ip)

return null

}

}

// 调用

var ipData = inquireIP('123.123.123.123')

这样子这个js文件会很大,也可以调用API的形式,为方便下面js代码使用了jquery

// 主函数

var inquireIP = function (ip, callback) {

$.ajax({

url: '你的API接口地址',

type: 'GET',

dataType: 'jsonp',

data: {ip: ip}

})

.done(function(data) {

callback(data)

})

}

// 调用

inquireIP('123.123.123.123', function (data) {

console.log(data)

})

这样子就可以在服务端处理,当然提前你得有服务器,并搭建一个查询ip的API接口

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title>js判断客户端ip地址跳转</title>

<meta name="keywords" content="" />

<meta name="description" content="" />

<script src="http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js"></script>

</head>

<body>

<script>

if(remote_ip_info.province != "广东"){

location.href="http://a.com"

}else{

location.href="http://b.com"

}

</script>

</body>

</html>

【摘自百度经验】