Метаданные изображений Просмотра улиц

Введение

Запросы метаданных Street View Static API возвращают данные о панорамах Просмотра улиц. С помощью метаданных можно узнать, доступно ли изображение Просмотра улиц для определенного местоположения, а также получить программный доступ к координатам широты и долготы, идентификатору панорамы, дате съемки и информации об авторских правах на изображение. Доступ к этим метаданным позволяет настраивать поведение приложения при возникновении ошибок.

Запросы метаданных Street View Static API бесплатны. При запросе метаданных квота не потребляется. Квота расходуется, только когда вы загружаете изображение с помощью Street View Static API.

При запросе метаданных изображений Просмотра улиц точность панорамных изображений составляет 50 метров.

Как посмотреть метаданные изображения

Запрос метаданных изображения Просмотра улиц – это URL с протоколом HTTP следующего формата:

https://maps.googleapis.com/maps/api/streetview/metadata?parameters

Параметры разделяются амперсандами (&) в соответствии со стандартом написания URL.

Обязательные параметры для запросов метаданных

Запросы метаданных принимают те же параметры URL, что и запросы изображений Street View Static API, хотя обязательными являются только следующие параметры:

Выполните одно из следующих действий:

  • location – может быть текстовой строкой (например, Chagrin Falls, OH) или парой координат широты и долготы, разделенных запятой (40.457375,-80.009353).

Альтернативный вариант:

  • pano – идентификатор панорамы. Идентификаторы панорам могут со временем меняться, поэтому не сохраняйте их. Вместо этого сохраните адрес или координаты широты и долготы, чтобы вы могли обновить идентификатор панорамы. Подробнее о том, как обновить идентификаторы удаленных панорам…

А также:

  • key и signature – ключ API необходим для аутентификации запроса. Цифровая подпись также требуется в некоторых случаях и всегда рекомендуется. Подробнее о том, как получить ключ и подпись…

Запрос метаданных, содержащий только обязательные параметры, выглядит следующим образом:

https://maps.googleapis.com/maps/api/streetview/metadata?location=&key=YOUR_API_KEY&signature=<YOUR_SIGNATURE>

или так:

https://maps.googleapis.com/maps/api/streetview/metadata?pano=&key=YOUR_API_KEY&signature=<YOUR_SIGNATURE>

Обновление идентификаторов удаленных панорам

Если при попытке получить идентификатор панорамы вы получаете ZERO_RESULTS или не получаете никакого значения, значит идентификатор панорамы был удален и его нужно обновить.

  1. Сохраните адрес или координаты широты и долготы, которые вы использовали для получения идентификатора панорамы, чтобы при необходимости обновить его.

  2. Если вы обнаружили, что идентификатор панорамы изменился, используйте исходный адрес или координаты широты и долготы, чтобы снова найти ближайшие панорамы и получить новый идентификатор.

Необязательные параметры для запросов метаданных

В запрос метаданных можно включить следующие параметры: size, heading, fov и pitch. Обратите внимание, что эти параметры не влияют на данные о панораме или на то, какая панорама будет найдена. В API можно включать те же параметры, что и в запросе изображений, чтобы упростить создание запроса метаданных, связанного с определенным запросом изображений. Однако для запросов метаданных API игнорирует необязательные параметры и их значения. Подробную информацию об использовании этих параметров можно найти в руководстве для разработчиков по Street View Static API.

Формат ответа

Ответы на запросы метаданных возвращаются только в формате JSON.

Примеры

Пример 1. Панорама найдена

Следующие URL успешно запрашивают метаданные и изображение одной и той же панорамы.

Запрос метаданных и ответ на него

https://maps.googleapis.com/maps/api/streetview/metadata?size=600x300&location=eiffel%20tower,%20paris,%20france&heading=-45&pitch=42&fov=110&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
{
   "copyright" : "© 2017 Google",
   "date" : "2016-05",
   "location" : {
      "lat" : 48.85783227207914,
      "lng" : 2.295226175151347
   },
   "pano_id" : "tu510ie_z4ptBZYo2BGEJg",
   "status" : "OK"
}

Запрос и ответ, в котором должно быть отсутствующее изображение.

https://maps.googleapis.com/maps/api/streetview?size=600x300&location=eiffel%20tower,%20paris,%20france&heading=-45&pitch=42&fov=110&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
Эйфелева башня

Пример 2. Панорама не найдена

Следующие URL запрашивают метаданные и изображение для панорамы, которую не удалось найти в указанном месте или рядом с ним.

Запрос и ответ метаданных

https://maps.googleapis.com/maps/api/streetview/metadata?size=600x300&location=78.648401,14.194336&fov=90&heading=235&pitch=10&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
{
   "status" : "ZERO_RESULTS"
}

Запрос и ответ для изображений

https://maps.googleapis.com/maps/api/streetview?size=600x300&location=78.648401,14.194336&fov=90&heading=235&pitch=10&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
Плейсхолдер &quot;Нет изображений&quot;

Коды статуса

Поле status в объекте ответа метаданных содержит статус запроса и может содержать сведения для отладки, которые помогут вам устранить неполадки, если запрос Просмотра улиц не работает. Поле status может содержать следующие значения:

Статус Описание
"OK" Указывает на отсутствие ошибок. Панорама найдена, и метаданные возвращены.
"ZERO_RESULTS" Означает, что не удается найти панораму для окрестностей указанного места. Такой ответ может быть получен, если вы указали несуществующий или недействительный идентификатор панорамы. См. раздел [Обновление идентификаторов удаленных панорам](#refresh-pano).
"NOT_FOUND" Указывает, что не удалось найти адрес, указанный в параметре location. Такое сообщение может появиться, если указан несуществующий адрес.
"OVER_QUERY_LIMIT" Указывает, что вы превысили дневную квоту или квоту в секунду для этого API.
"REQUEST_DENIED" Означает, что запрос отклонен. Это сообщение может появиться, если вы не авторизовали запрос или если Street View Static API не активирован в проекте консоли Google Cloud, содержащем ваш ключ API.
"INVALID_REQUEST" Обычно указывает, что параметры запроса (адрес, координаты широты и долготы или компоненты) отсутствуют.
"UNKNOWN_ERROR" Запрос не удалось выполнить из-за ошибки сервера. Обычно это временно. Если повторить попытку, запрос может оказаться успешным.

Дополнительная информация

Дополнительную информацию об использовании Street View Static API и других продуктов Google Maps API можно найти на странице поддержки Maps API.