根据 JSON 回调数据重定向 URL

Redirect URL based on JSON callback data

我尝试使用 JavaScript 按国家/地区重定向访问者

以下调用检查访问者所在国家/地区的 IP,例如CN(中国)并将其重定向到其他网站。

<script async src="https://get.geojs.io/v1/ip/country.js"></script>

<script type="application/javascript">
  function geoip(json) {
    var countrycode.textContent = json.country;
  }

  if (countrycode.textContent == "CN") {
    window.location = "http://baido.com"
  }
</script>

有什么帮助吗?

问题是您没有正确使用示例代码。 countrycode.textContent 部分应该在浏览器上显示用户的国家/地区代码,这意味着它不适用于您的用例,因为您正在尝试重定向。

另请注意,您从 geojs 加载的脚本使用了 geoip 函数,因此如果您尝试重定向,则应在该函数中执行此操作。

这是有效的更新代码。


    <script type="application/javascript">
        function geoip(json){
            if (json.country_code == "CN") {
              window.location = "http://baido.com/";
            }
        }
    </script>
    <script async src="https://get.geojs.io/v1/ip/geo.js"></script>

我看到有一个答案标记为已解决,但我仍然无法让它工作。所以我创建了这个,以防万一你想往另一个方向走:

  function geoip() {
  
   $.ajax({
        type: 'get',
        url: 'https://get.geojs.io/v1/ip/country.json',
        success: function(data) {
            if (data['country'] == "CN") {
              window.location = "https://baido.com/";
            }
     }
    });
    }
    
geoip();
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>