2012-01-20 4 views
2

Я установил этот проект JavaScript, который пытается получить геолокацию пользователя, используя клиентский JavaScript.Будет ли Google дроссельная заслонка пытаться получить местоположение пользователя, используя вызовы jsapi на стороне клиента?

https://github.com/codejoust/session.js/

механизм по умолчанию для поиска местоположения является jsapi функция от Google.

Будет ли Google гасить способность моего приложения получать эту информацию после определенного количества запросов?

Функция в вопросе выглядит следующим образом:

gapi_location: function(){ 
     return function(callback){ 
     var location = util.get_obj(options.location_cookie); 
     if (!location || location.source !== 'google'){ 
      win.gloader_ready = function() { 
      if ("google" in win){ 
       if (win.google.loader.ClientLocation){ 
       win.google.loader.ClientLocation.source = "google"; 
       callback(win.google.loader.ClientLocation); 
       } else { 
       callback({error: true, source: "google"}); 
       } 
       util.set_cookie(
       options.location_cookie, 
       util.package_obj(win.google.loader.ClientLocation), 
       options.location_cookie_timeout * 60 * 60 * 1000); 
      }} 
      util.embed_script("https://www.google.com/jsapi?callback=gloader_ready"); 
     } else { 
      callback(location); 
     }} 
    }, 

ответ

1

Я думаю, вы не спрашиваете о геокодировании, но о местонахождении. ClientLocation устарел, на него нельзя полагаться. Я бы использовал HTML5 Geolocation в качестве вашего первого варианта, как показано в this sample.

+0

Кроме того, попробуйте воспользоваться службой freeipdb, если вы не дадите им слишком много нагрузки, вам нужно будет зарегистрировать ключ API на своем веб-сайте. См. Нижнюю часть readme. – CodeJoust

1

От: http://code.google.com/intl/pl-PL/apis/maps/documentation/geocoding/#Limits

Пределы использования Использование в API Google Geocoding подлежит предел запросов 2500 геолокации запросов в день. (Пользователь API Карт Google для бизнеса может выполнять до 100 000 запросов в день.) Этот предел применяется для предотвращения злоупотреблений и/или повторного использования API геокодирования, и этот предел может быть изменен в будущем без уведомления. Кроме того, мы применяем ограничение скорости запроса, чтобы предотвратить злоупотребление службой. Если вы превысите 24-часовой лимит или иным образом злоупотребляете сервисом, API геокодирования может временно перестать работать на вас. Если вы продолжаете превышать это ограничение, ваш доступ к API геокодирования может быть заблокирован. Примечание: API геокодирования может использоваться только в сочетании с картой Google; результаты геокодирования без отображения их на карте запрещены. Подробную информацию о разрешенном использовании см. В Ограничениях лицензии на использование API Карт API.

+1

Это не то, что я думаю, что API использует, это дополнительная информация в их загрузчике JS, это поиск местоположения IP, а не геокодирование. – CodeJoust