2015-09-03 2 views
-1

Я пытаюсь выполнить запрос curl к API карт google, используя следующий URL. Когда я делаю это из браузера, я возвращаю правильные результаты, но если я сделаю это из командной строки на той же машине, я получу ошибку (см. Ниже). Что мне не хватает?Google maps JSON query

Curl запрос:

curl https://maps.googleapis.com/maps/api/directions/json?origin=San+Francisco,CA&destination=Mountain+View,CA&sensor=false&key=API_KEY 

Выход:

{ 
    "error_message" : "Invalid request. Missing the 'destination' parameter.", 
    "routes" : [], 
    "status" : "REQUEST_DENIED" 
} 
+0

Вы URL-адрес, кодирующий URL, как описано в [документации] (https://developers.google.com/maps/web-services/overview# BuildingURLs)? – geocodezip

+0

Если URL-адрес работает так же, как в браузере, должен ли тот же URL-адрес переходить на работу с завихрением? – user3079275

+0

Связанный вопрос: [Как присвоить данные для команды curl?] (Http://stackoverflow.com/questions/296536/how-to-urlencode-data-for-curl-command) – geocodezip

ответ

2

При использовании знака ampercent & - вы фактически нарушая командную строку. Чтобы это исправить, введите URL в двойные кавычки "<url>":

curl "https://maps.googleapis.com/maps/api/directions/json?origin=San+Francisco,CA&destination=Mountain+View,CA&sensor=false&key=API_KEY" 
Смежные вопросы