Я пытаюсь вызвать API Google Адресов, чтобы вернуть список ресторанов рядом со мной. Когда я вызываю это из браузера, он отлично работает. Однако, когда я вызываю это изнутри приложения iOS, которое я построил с использованием Ionic Framework, он терпит неудачу с ошибкой NULL данных, 0.Вызов API Google Адресов/поблизости от приложения iOS
Я исследовал довольно много, понял, что это проблема CORS. Я просмотрел документацию Google о том, как отправлять запросы GET для приложения iOS. Я использовал идентификатор пакета приложения для создания ключа и идентификатора клиента для своего приложения. Используя шаги здесь https://developers.google.com/accounts/docs/OAuth2InstalledApp#overview, я получил access_token, который я использовал в качестве параметра запроса так же, как упомянутые документы. Ничего не работает. Что происходит не так?
URL, который работает в браузере: https://maps.googleapis.com/maps/api/place/nearbysearch/json?key=MyServerApplicationsKey&location=33.85463,-84.35870&rankby=distance&types=restaurant
URL, который не удается из IOS App: https://maps.googleapis.com/maps/api/place/nearbysearch/json?key=MyiOSApplicationsKey&location=33.85463,-84.35870&rankby=distance&types=restaurant&access_token=MyToken
@plexer Я использую ключ сервера для вызова URL из браузера. Это работает, как уже упоминалось. Из приложения, если я использую этот ключ, я получаю следующую ошибку: {"data": null, "status": 0, "config": {"method": "GET", "transformRequest": [null], "transformResponse": [null], "url": "sameUrlThatWorksOnBrowser", "headers": {"Accept": "application/json, text/plain, /"}}, "statusText": ""}
Вы используете функцию печени на устройстве? –
Да, я. Как это связано? –
Итак, я понял, что это связано с «списком разрешенных IP-адресов» в разделе «Ключ для серверных приложений». Это очень больно, поскольку мне нужно указать список всех IP-адресов, из которых будет поступать запрос ! Любой способ сделать эту работу для любого IP-адреса? –