API сокращения URL-адресов Google —

Новичок в API... Я искал документацию здесь (https://developers.google.com/url-shortener/v1/getting_started) и не смог заставить работать следующую команду:

  curl https://www.googleapis.com/urlshortener/v1/url?key=<MYAPIKEY> \
  -H 'Content-Type: application/json' \
  -d '{"longUrl": "http://www.google.com/"}'

Получил это сообщение об ошибке:

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "required",
    "message": "Required parameter: shortUrl",
    "locationType": "parameter",
    "location": "shortUrl"
   }
  ],
  "code": 400,
  "message": "Required parameter: shortUrl"
 }
}

Не уверен, почему они просят параметр shortUrl, разве я не ищу, чтобы они вернули мне?


person ColeyMei    schedule 30.09.2016    source источник


Ответы (1)


Это правильный пример, и вы, вероятно, сделали что-то еще неправильно. API работает правильно и сокращает URL-адрес с помощью предоставленного вами примера.

Вы уверены, что не закончили выполнение команды на первой обратной косой черте (\), потому что, если вы это сделаете, она вернется с ошибкой, которую вы испытываете. Убедитесь, что вы запускаете всю команду сразу. Вы также можете объединить несколько строк в одну и удалить обратную косую черту.

Итак, запустив эту команду (без предоставления содержимого и заголовков HTTP):

curl https://www.googleapis.com/urlshortener/v1/url?key=<MYAPIKEY>

Вернет следующую ошибку:

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "required",
    "message": "Required parameter: shortUrl",
    "locationType": "parameter",
    "location": "shortUrl"
   }
  ],
  "code": 400,
  "message": "Required parameter: shortUrl"
 }
}
person KARASZI István    schedule 30.09.2016
comment
Клянусь, я пробовал это раньше, но на этот раз это сработало - спасибо! :) - person ColeyMei; 02.10.2016