首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GeoIP2 --我如何才能掌握语言代码?

GeoIP2 --我如何才能掌握语言代码?
EN

Stack Overflow用户
提问于 2015-02-12 16:12:48
回答 1查看 436关注 0票数 0

我正在使用来自Maxmind的GeoIP2,我想知道如何从JSON响应中获得语言代码。似乎这不是从他们的API中出现的,而且我无法找到这方面的信息。

例如,我想得到:

代码语言:javascript
复制
en_GB

但是,GeoIP2似乎只给了我一个国家代码:GB

典型响应:

代码语言:javascript
复制
{
  "country": {
    "iso_code": "GB",
    "names": {
      "pt-BR": "Reino Unido",
      "es": "Reino Unido",
      "ru": "Великобритания",
      "en": "United Kingdom",
      "zh-CN": "英国",
      "fr": "Royaume-Uni",
      "de": "Vereinigtes Königreich",
      "ja": "イギリス"
    },
    "geoname_id": 2635167
  },
  "city": {
    "names": {
      "pt-BR": "Londres",
      "es": "Londres",
      "ru": "Лондон",
      "en": "London",
      "zh-CN": "伦敦",
      "fr": "Londres",
      "de": "London",
      "ja": "ロンドン"
    },
    "geoname_id": 2643743
  },
  "location": {
    "longitude": -0.0931,
    "latitude": 51.5142,
    "time_zone": "Europe/London"
  },
  "subdivisions": [
    {
      "iso_code": "ENG",
      "names": {
        "pt-BR": "Inglaterra",
        "es": "Inglaterra",
        "ru": "Англия",
        "en": "England",
        "zh-CN": "英格兰",
        "fr": "Angleterre",
        "de": "England",
        "ja": "イングランド"
      },
      "geoname_id": 6269131
    }
  ],
  "continent": {
    "names": {
      "pt-BR": "Europa",
      "es": "Europa",
      "ru": "Европа",
      "en": "Europe",
      "zh-CN": "欧洲",
      "fr": "Europe",
      "de": "Europa",
      "ja": "ヨーロッパ"
    },
    "geoname_id": 6255148,
    "code": "EU"
  },
  "traits": {
    "autonomous_system_number": 8220,
    "ip_address": "80.169.93.174",
    "organization": "COLT Technology Services Group Limited",
    "isp": "COLT Technology Services Group Limited",
    "autonomous_system_organization": "COLT Technology Services Group Limited"
  },
  "registered_country": {
    "iso_code": "GB",
    "names": {
      "pt-BR": "Reino Unido",
      "es": "Reino Unido",
      "ru": "Великобритания",
      "en": "United Kingdom",
      "zh-CN": "英国",
      "fr": "Royaume-Uni",
      "de": "Vereinigtes Königreich",
      "ja": "イギリス"
    },
    "geoname_id": 2635167
  },
  "postal": {},
  "represented_country": {
    "names": {}
  }
}

http://dev.maxmind.com/geoip/geoip2/javascript/

现在,一种解决方案是手动将navigator.language代码与来自GeoIP2的国家代码连接起来,但这最多也是一种肮脏的攻击,我想避免。

所有"iso_code"似乎都是国家代码。我也需要这种语言。

EN

回答 1

Stack Overflow用户

发布于 2015-02-12 19:27:23

无法从GeoIP2数据库或web服务获取此信息。很难知道哪种语言适合于给定的IP地址。

许多国家使用一种以上的语言。给定国家代码,您可以查找给定适当数据源的语言,但我不知道有一个好的JS库。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28482330

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档