需要建议:c# web应用的地理位置-需要国家位置来设置用户可以看到或不可以看到的内容

本文关键字:用户 设置 不可以 国家 web 应用 位置 地理位置 | 更新日期: 2023-09-27 18:10:08

我的场景是我想陷阱用户的国家,当他们访问网页。基于用户的国家,我想设置一个cookie,这将允许我做一个简单的"如果"语句后面的代码,将让他们看到网页上的某些信息。我开始做一些研究,我可以使用Google Geocode V3从c#背后的代码中获得国家。但要得到谷歌地理代码的工作,我需要在经度和纬度传递。我看到这个的唯一方法是Javascript调用,比如:

if(navigator.geolocation) {
    navigator.geolocation.getCurrentPosition(function(position) {
        var latitude = position.coords.latitude;
        var longitude = position.coords.longitude;
    });
}

所以我希望一些建议,如果我这样做是正确的。在我的c#代码中加载的方法,我想我可以让javascript通过ScriptManager运行。RegisterStartUpScript方法。我现在的挑战是获取经纬度值。因为我不去一个按钮事件或什么,我需要得到这些值出来,然后把它们传递到我的c#方法,将获得国家代码使用谷歌地理代码。听起来对吗?如果这是正确的路径,有人可以建议我如何从javascript得到这些值?谢谢。

需要建议:c# web应用的地理位置-需要国家位置来设置用户可以看到或不可以看到的内容

您可以对包含客户端地理位置的服务器进行Ajax调用。

使用RegionInfo怎么样?CurrentRegion呢?这将根据浏览器头显示国家,假设您将全球化文化设置为auto。这样更简单,但也不是100%正确,因为用户可以更改他们的区域性设置。

你也可以考虑使用基于IP地址的地理定位,这可能更准确。

这将有助于了解你为什么要这样做。

大多数真正需要确保内容不受国界限制的网站都可以处理收费内容——例如,大多数音乐网站、Amazon等。

他们简单而有效的方法是使用用户信用卡上的国家账单地址。