2013-11-01 7 views
2

Это мой первый вопрос, связанный с переполнением стека, действительно надеюсь, что вы, ребята, можете помочь.google maps api, Предоставленный ключ API недействителен

Я пытаюсь использовать google maps geocodeing api в первый раз и не могу заставить его работать.

Формат URL я использую:

https://maps.googleapis.com/maps/api/geocode/json?address=LS2+9AQ & датчик = ложный & ключ = [MY_API_KEY]

В этом случае я просматриваю почтовый индекс uk: LS2 9AQ из браузера Chrome.

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

Я еще не использую это на производственной площадке, поскольку теперь он работает от моего локального разработчика в хроме.

Фактический ответ я получаю:

[error_message] => The provided API key is invalid. 
[results] => Array 
    (
    ) 

    [status] => REQUEST_DENIED 

Когда я удалить ключ API он работает и возвращает следующее:

{ 
    "results" : [ 
     { 
     "address_components" : [ 
      { 
       "long_name" : "LS2 9AQ", 
       "short_name" : "LS2 9AQ", 
       "types" : [ "postal_code" ] 
      }, 
      { 
       "long_name" : "Woodhouse", 
       "short_name" : "Woodhouse", 
       "types" : [ "sublocality", "political" ] 
      }, 
      { 
       "long_name" : "Leeds", 
       "short_name" : "Leeds", 
       "types" : [ "locality", "political" ] 
      }, 
      { 
       "long_name" : "West Yorkshire", 
       "short_name" : "West York", 
       "types" : [ "administrative_area_level_2", "political" ] 
      }, 
      { 
       "long_name" : "United Kingdom", 
       "short_name" : "GB", 
       "types" : [ "country", "political" ] 
      }, 
      { 
       "long_name" : "Leeds", 
       "short_name" : "Leeds", 
       "types" : [ "postal_town" ] 
      } 
     ], 
     "formatted_address" : "Woodhouse, Leeds, West Yorkshire LS2 9AQ, UK", 
     "geometry" : { 
      "bounds" : { 
       "northeast" : { 
        "lat" : 53.8090296, 
        "lng" : -1.5509549 
       }, 
       "southwest" : { 
        "lat" : 53.8083045, 
        "lng" : -1.5519655 
       } 
      }, 
      "location" : { 
       "lat" : 53.808447, 
       "lng" : -1.5517752 
      }, 
      "location_type" : "APPROXIMATE", 
      "viewport" : { 
       "northeast" : { 
        "lat" : 53.81001603029149, 
        "lng" : -1.550111219708498 
       }, 
       "southwest" : { 
        "lat" : 53.80731806970849, 
        "lng" : -1.552809180291502 
       } 
      } 
     }, 
     "types" : [ "postal_code" ] 
     } 
    ], 
    "status" : "OK" 
} 

Я попытался заменить URL с той, которая в настоящее время находится в использовать на моем сайте работ, и я получил тот же ответ, я попробовал два разных ключа, которые я создал сам, один из них создан на прошлой неделе, а другой создан час назад. Я настроил ключи следующим образом:

  • оплата включена и кредитная карта привязана к проекту (мне сказали, это было необходимо, чтобы увеличить лимит на API, путем проверки идентичности)
  • на одном ключевой referrer установлен на «dev.test.com/*» (это url, который я использую для этого локального разработчика). На другом ключе не указана ссылка.
  • ключ браузер приложений ключ

Я определенно ввести ключ правильно, как я и другой разработчик проверил это несколько раз, есть ли какие-либо идеи о том, что может быть не так?

Заранее благодарим любого, кто помогает.

ОБНОВЛЕНИЕ Я нашел проблему, из-за которой процесс прекратил работу после 10 итераций. Геокодирование Google api имеет ограничение в 10 вызовов в секунду, и я перехожу к этому, теперь я добавил задержка на 1 секунду каждые 10 итераций, и теперь я могу теоретически достигать дневного лимита.

Однако мне все еще нужно больше вызовов, чем ограничение по умолчанию, как описано в моих комментариях ниже. Я считаю, что могу использовать ключ api для увеличения бесплатного лимита, основанного на том, что у меня есть проверенная учетная запись. Я использую это для бизнеса, но это недостаточно высокий объем, чтобы заплатить за него. Может ли кто-нибудь помочь мне разобраться в этом?

+0

Возможный дубликат [ключа API Карт Google для ограничения запроса перед созданием одного геокода] (http://stackoverflow.com/questions/19129910/google-maps-api -key-over-query-limit-before-a-single-geocode-has-made) – geocodezip

+0

Я не думаю, что это дубликат, поскольку его проблема может быть вызвана rackspace, мы не используем их для хостинга и прямо сейчас проблема на моей локальной машине dev. Кроме того, я не получаю ошибку «OVER_QUERY_LIMIT» из этого вопроса, и я не использую Codeigniter и Google Biostall's v3 Api –

+0

. Что мне делать, чтобы получить ответ? это не дубликат, но никто, кажется, не смотрит на него из-за этого флага наверху ... –

ответ

3

Хорошо, похоже, то, что я пытаюсь сделать, невозможно без оплаты бизнес-счета. Невозможно применить apikey к геокодированию google go.

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

Это, похоже, не относится к геокодированию api.

+1

Это, однако, не работает после нескольких тысяч запросов. В моем случае Google заблокировал мой IP-адрес. Я все еще не могу использовать ключ и получать данные геолокации с помощью адреса. Док говорит 2500 запросов в день для бесплатного пользователя. Вы столкнулись с этой проблемой? – sanket

-1

Из вашего примера, похоже, вы пытаетесь привязать почтовые индексы Великобритании. Для этого вам не нужен API Google, вы можете загрузить список почтовых индексов Великобритании, поместить его в базу данных и использовать Google в качестве резервного варианта. Я бы порекомендовал его скачать https://www.doogal.co.uk/UKPostcodes.php

Смежные вопросы