#ios #http #map #google-api
#iOS #http #Карта #google-api
Вопрос:
Я использую Google Maps api для разработки приложения для iOS. Мне нужно найти ближайшую заправочную станцию на карте. Когда я вызываю http-запрос: http://maps.googleapis.com/maps/api/geocode/json?address=%gas stationamp;sensor=true , он возвращает один результат. Но это единственный. Результатов должно быть много. Независимо от того, какие ключевые слова я отправляю, он возвращает только один результат. Кто-нибудь знает, как с этим справиться?
Ответ №1:
Я открыл URL-адрес в браузере и получил этот ответ :
{ «результаты»: [], «статус»: «ZERO_RESULTS» }
Согласно документации Google Maps здесь
«ZERO_RESULTS» указывает, что геокод был выполнен успешно, но не вернул результатов. Это может произойти, если геокоду был передан несуществующий адрес или latlng в удаленном местоположении.
АЗС — это неопределенный адрес. Попробуйте ввести действительный адрес с названием района, города или улицы. И вы получите результаты. например http://maps.googleapis.com/maps/api/geocode/json?address=250 King St SFamp;sensor=true
Вам необходимо использовать Places API для поиска таких мест, как заведения (рестораны, заправочные станции и т. Д.)
Комментарии:
1. Спасибо. Когда я выполняю поиск по maps.google.com (например, университет), я получаю много результатов. Но когда я использую ссылку maps.googleapis.com/maps/api/geocode /… , я ничего не получаю. Я не могу понять, почему? Предоставляет ли Google другой источник данных, когда люди используют api, а не maps.google.com ??
2. Нет. Насколько я экспериментировал, данные те же. Ссылка на api, которую вы пытаетесь использовать, предназначена для геокодирования. И когда вы выполняете поиск по ключевому слову «университет» на maps.google.com это не запрос на геокодирование. Фактически это запрос «места». API — интерфейс Places code.google.com/apis/maps/documentation/places поможет вам с вашим запросом по ключевому слову «университет» и даст вам результаты
3. Спасибо. Это действительно помогает! Я должен был внимательно прочитать документы.
Ответ №2:
Я не знаю почему, но когда я выводил результат на консоль, он всегда показывал только один результат. Но в режиме отладки с точкой останова было 5 результатов. Пожалуйста, проверьте это, используя режим отладки.