基于IP地址以用户的母语显示网站

时间:2015-02-20 13:22:38

标签: json geolocation ip ip-geolocation

我希望我的网站以访问者的母语打开,具体取决于用户登录的IP地址。

默认情况下,该页面以英文打开,但我希望法国的客户用法语阅读该网站。我已经通过www.ipinfo.io获取信息,但我仍然有点困惑,想知道json格式。

3 个答案:

答案 0 :(得分:2)

您应该使用用户浏览器传递到您网站的accept-language标题来确定语言,而不是用户的当前国家/地区。

如果您确实要根据国家/地区自定义网站内容,您使用的http://ipinfo.io代码将如下所示:

$.get("http://ipinfo.io", function(response) {
    if(response.country == 'US') {
        // User is in the USA
    } else {
        // User is elsewhere 
    }
}, "jsonp");

您可以在http://country.io/data/

找到国家/地区代码与姓名,货币代码,拨号代码等内容的完整映射

答案 1 :(得分:1)

我建议不要单独使用IP来确定显示语言。 使用Accept-Language标头更加可靠。

考虑以下相对常见的情况: 只会讲英语的人会前往俄罗斯并打开您的网站。然后俄罗斯登陆页面以西里尔语显示。

答案 2 :(得分:0)

这不能解答您的上一个问题,但它可以更好地解决您的问题。

不是使用IP地址来确定区域设置,而是使用基于浏览器“Accept-Language”标头的本地化。根据您的操作系统的本地化设置安装浏览器时,默认情况下会设置此标头。

大多数现代UI框架(无论是网络,移动还是桌面)都有本地化/国际化库。