我希望能够根据访问者来自美国的哪个州来重定向页面。
很长一段时间,我都在使用旧脚本,如下所示,它是如此简单易用 - 我所要做的就是将其粘贴到我的 html 文件中的标记之后,它就起作用了:
<script language="JavaScript" src="http://j.maxmind.com/app/geoip.js"></script>
<script language="JavaScript">
var user_state = geoip_region();
if( user_state == "NY")
window.location = "http://example.com/new-york-page/";
else if( user_state == "TX")
window.location = "http://example.com/texas-page/";
</script>
因此,如果用户来自德克萨斯州或纽约,他们会被重定向,但否则,他们只会继续获取我嵌入此代码的页面。
但最近,它停止工作了,显然这个来自 maxmind 的免费遗留脚本不再工作(给出 404 错误),而且他们只是“付费”了。
所以,我付费使用他们更新的 geoip2 脚本,并将第一行替换为 geoip2 代码,给我这个:
<script src="http://js.maxmind.com/js/apis/geoip2/v2.1/geoip2.js" type="text/javascript"></script>
<script language="JavaScript">
var user_state = geoip_region();
if( user_state == "NY")
window.location = "http://example.com/new-york-page/";
else if( user_state == "TX")
window.location = "http://example.com/texas-page/";
</script>
但是我发现它不起作用。
我一直在尝试理解他们网站上的 geoip 教程,但它们太复杂了,我真的很挣扎。我正在寻找像第一个示例一样简单且易于使用的东西 - 即我可以在标签后面复制并粘贴到页面中的东西。
任何人都有任何想法,是否仍然可以根据访问者到达网页的状态,使用 geoip2 脚本(而不是旧的遗留脚本)进行简单的重定向?
最佳答案
该模块中没有函数geoip_region
。但有一个对象geoip2
。我不确定州(您需要查看他们的文档),但要获取城市,您需要调用电话 geoip2.city()
。
关于javascript - 基于美国州的重定向页面,使用 Maxmind geoip2 JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27454205/