Требуется совет: геолокация для веб-приложения на c # - необходимо указать местоположение страны, чтобы указать, что пользователь может видеть или нет - PullRequest
0 голосов
/ 02 октября 2011

Мой сценарий - я хочу перехватить страну пользователя, когда он получает доступ к веб-странице.В зависимости от страны пользователя я хочу установить cookie, который позволит мне сделать простое утверждение «если» в коде, который позволит им видеть определенную информацию на веб-страницах.Я начал делать некоторые исследования, и я могу использовать Google Geocode V3 и получить страну из кода за C #.Но чтобы заставить работать Google Geocode, мне нужно передать долготу и широту.И единственный способ, которым я это видел, - это вызов Javascript, такой как:

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

Так что я надеюсь получить совет, если я делаю это правильноНа загруженном методе в моем коде c # я думаю, что я могу заставить javascript работать методом ScriptManager.RegisterStartUpScript.Поэтому моя задача сейчас - получить значения широты и долготы.Поскольку я не собираюсь использовать событие кнопки или что-то еще, мне нужно получить эти значения, а затем передать их в мой метод c #, который бы получал код страны с помощью геокода Google.Это звучит правильно?Если это правильный путь, может кто-нибудь подсказать, как я могу получить эти значения из JavaScript?Благодарю.

Ответы [ 2 ]

0 голосов
/ 02 октября 2011

Большинство сайтов, которым действительно необходимо убедиться, что контент находится в пределах национальных границ, работают с контентом, который подлежит оплате - например, большинство музыкальных сайтов, Amazon и т. Д.

Их простая, но эффективная техникаиспользовать страну на платежном адресе пользователя на его кредитной карте.

0 голосов
/ 02 октября 2011

Вы можете сделать Ajax-вызов на ваш сервер, который содержит геолокацию клиента.

А как насчет использования RegionInfo.CurrentRegion? Это даст вам страну в соответствии с заголовками браузера, при условии, что у вас культура глобализации включена в авто. Это проще, но также не всегда будет на 100% правильным, так как пользователь может изменять свои настройки культуры.

Возможно, вы захотите использовать геолокацию на основе IP-адреса, которая может быть немного более точной.

Было бы полезно узнать, почему вы пытаетесь это сделать.

...