Когда я набираю запрос Mountainview chem-dry
на странице примера https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete Я возвращаю результаты. Когда я открою его в jsfiddle, поставьте свой собственный ключ api и запустите его снова, я не получу никаких результатов. Я просмотрел запросы и, кроме ключей и некоторых других нечетных параметров запроса (1d-33.936405187906715
и т. Д.), Запросы идентичны. Единственное различие в коде - это ключ api.Google помещает автозаполнение, показывающее разные результаты, в зависимости от ключа
ответ
Mountainview Chem-Dry определяется как бизнес сферы обслуживания. Обратите внимание, что сервис-центр не должен быть доступен через автозаполнение места.
Эти места обычно имеют 0,0 координаты в ответах, и нет смысла показывать места без точных координат на карте.
Если вы просматриваете сетевую активность при выполнении образца страницы с помощью ключа API Google, вы увидите, что идентификатор места для Mountainview Chem-Dry - это ChIJG-kOFY4NiYgRc2BFHIDJ7eg.
Теперь Execute детали место просить:
Вы увидите следующее в ответ:
...
"geometry":{
"location":{
"lat":0,
"lng":0
},
"location_type":"APPROXIMATE"
},
...
, что указывает на то, что это SAB. Кроме того, обратите внимание, где пример показывает это место (это 0,0 координата в Атлантическом океане недалеко от Африки)
Это действительно сбивает с толку. Думаю, примерная страница Google не должна использовать внутренний ключ API с возможностью показывать все места, потому что обычные ключи API, которые вы можете создать в консоли разработчика, фильтруют все SAB.
Я думал, что это связано с тем, что это SAB, но не совсем уверен, имеет ли ключ, используемый на образце, дополнительные разрешения или полномочия или что-то еще. Это имеет смысл. – SgtPepper43