根据IP辨别所在地区

之前解析IP所在地 身份证等我是用打开Url,分析响应网页结果处理,然后用Servlet传回页面。
public Return getInfoByQueryID(String q,String type) {
	if("ID".equals(type)){
		Return.put("result", getUserInfoByID(q));
	}else if("IP".equals(type)){
		Return.put("result", getLocByIP(q));
	}else if("PHONE".equals(type)){
		Return.put("result", getLocByPhone(q));
	}
    return SUCCESS;
}



其实可直接调用API URL返回一段JS,直接处理JS即可,在注册页面根据IP判断用户所在地并处理:
jQuery.getScript('http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js',function(data,status){
	if(remote_ip_info.ret == '1'){
		var province = remote_ip_info.province;
		var city = remote_ip_info.city;
		areaNowPC.setText(0,province);
		areaNowPC.setText(1,city);
		var vals = areaNowPC.getValue();
		jQuery("#nowPC").val(vals[vals.length-1]);
	}   
});



更方便。
根据IP获取所在地的URL API目前已知有:
1.新浪API:
http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=IP地址
根据format传回不同格式,如果format为js返回 var remote_ip_info={...};
2.淘宝API:
http://ip.taobao.com/service/getIpInfo.php?ip=[ip地址字串]
但有访问限制:每用户的访问频率要小于10qps。
3太平洋API
http://whois.pconline.com.cn/?ip=[ip地址字符串]
4.Google,搜狐,腾讯等网站的API
5.利用纯真数据库或其他第三方已有IP数据库,不用第三方 自己解析:
http://lumaqq.linuxsir.org/article/qqwry_format_detail.html
http://www.yovisun.com/get-ip-addr-chunzhen.html





你可能感兴趣的:(根据IP辨别所在地区)