所以我有这段代码,我想转换为Geoip2:
window.onload = function(){
var eu = ['AT','DE','BE','ES','FI','FR','IE','IT','LU','NL','PT','GR','SI','CY','MT','SK','EE'];
var country = geoip_country_code();
var index = eu.indexOf(country);
if(index > -1){
document.getElementById('prices').src = "http://test.com";
}else{
document.getElementById('prices').src = "http://test.com";
}}
问题出在lign 4:geoip_country_code();不工作,我的意思是它不会返回任何东西,也不会抛出错误。我知道它是因为这个功能在geoip2中不可用,所以我正在寻找替代品。 有什么想法吗?
答案 0 :(得分:0)
假设您的意思是maxmind-API:
该函数的新名称为geoip2.country
。
返回的结果将包含country
- 属性,期望值(ISO代码)可通过iso_code
成员获得 - country
- 属性:
window.onload = function(){
geoip2.country(
function(result){
var eu = ['AT','DE','BE','ES','FI','FR','IE','IT','LU','NL','PT','GR','SI','CY','MT','SK','EE'];
var country = result.country.iso_code;
var index = eu.indexOf(country);
if(index > -1){
document.getElementById('prices').src = "http://test.com?eu=1";
}
else{
document.getElementById('prices').src = "http://test.com?eu=0";
}
},
function(error){
console.log(error);
});
}