【问题标题】:How can I get the user's country from Sitecore Geolocation information?如何从 Sitecore 地理位置信息中获取用户所在的国家/地区?
【发布时间】:2015-09-10 12:46:31
【问题描述】:

我有一个使用 Sitecore 7.5 构建的 Sitecore 解决方案。我们还从 Sitecore 应用中心购买了 Sitecore IP 地理定位服务。现在,一旦我运行了所有这些,我如何才能在代码中访问当前用户的国家?我似乎找不到任何说明如何获取任何地理位置信息的文档。

谢谢, 科里

【问题讨论】:

    标签: sitecore sitecore7 ip-geolocation


    【解决方案1】:

    我假设您已启用分析。试试这个:

    Sitecore.Analytics.Tracker.Current.Interaction.GeoData.Country
    

    【讨论】:

    • 这非常有效。你在哪里找到它?是否有更多可用的文档?
    • @Dmytro 这会在会话加载之前启动吗? Tracker.Current.Session.Interaction.GeoData
    【解决方案2】:

    现在看来这是正确的做法:

    Sitecore.Analytics.Lookups.LookupManager.GetInformationByIp(string ip);
    

    【讨论】:

      【解决方案3】:

      简单形式:

      Sitecore.Analytics.Lookups.MaxMindProvider maxMindProvider = new Sitecore.Analytics.Lookups.MaxMindProvider();
      Sitecore.Analytics.Lookups.WhoIsInformation geoIpInformation = maxMindProvider.GetInformationByIp(Request.ServerVariables["REMOTE_ADDR"]);
      string country = geoIpInformation.Country;
      

      使用缓存:

      System.Net.IPAddress ipAddress = null;
      
      if (System.Net.IPAddress.TryParse(Request.ServerVariables["REMOTE_ADDR"], out ipAddress))
      {
          Sitecore.Analytics.Lookups.GeoIpOptions geoIpOptions = new Sitecore.Analytics.Lookups.GeoIpOptions();
          geoIpOptions.Ip = ipAddress;
          geoIpOptions.MillisecondsTimeout = 1000;
      
          Sitecore.Analytics.Lookups.GeoIpResult geoIpResult = Sitecore.Analytics.Lookups.GeoIpManager.GetGeoIpData(geoIpOptions);
      
          if (geoIpResult != null)
          {
              string country = geoIpResult.GeoIpData.Country;
          }
      }
      

      来源:http://wiki.evident.nl/Sitecore%20MaxMind%20GeoIP%20api%20and%20cachinig.ashx?AspxAutoDetectCookieSupport=1

      【讨论】:

      • 这是旧的(基于 MaxMind 的)地理 IP 的东西。新的就不一样了。
      【解决方案4】:

      【讨论】:

      • 这里只包含安装说明,不包含安装后的使用方法。
      猜你喜欢
      • 2023-03-21
      • 1970-01-01
      • 1970-01-01
      • 2011-10-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-30
      相关资源
      最近更新 更多