Сервис Place Photo (новый) — это API, доступный только для чтения, который позволяет добавлять в приложение высококачественный фотографический контент. Сервис Place Photo предоставляет вам доступ к миллионам фотографий, хранящихся в базе данных Places.
Когда вы получаете информацию о месте с помощью запроса «Сведения о месте», «Поиск поблизости» или «Текстовый поиск», вы также можете запросить фоторесурсы для соответствующего фотографического контента. Используя службу фотографий, вы можете получить доступ к указанным фотографиям и изменить размер изображения до оптимального размера для вашего приложения.
API Explorer позволяет вам делать запросы в реальном времени, чтобы вы могли ознакомиться с API и опциями API:
Попробуйте!Размещать запросы на фото
Запрос Place Photo — это HTTP-запрос GET к URL-адресу в форме:https://places.googleapis.com/v1/NAME/media?key=API_KEY&PARAMETERS
Где необходимы следующие параметры:
- NAME содержит имя ресурса фотографии.
- API_KEY содержит ключ API.
- PARAMETERS содержит параметр
maxHeightPx
, параметрmaxWidthPx
или оба параметра.
Полный список обязательных и дополнительных параметров описан ниже.
Обязательные параметры
Название фотографии
Строковый идентификатор, однозначно идентифицирующий фотографию. Названия фотографий возвращаются из запроса Place Details (New) , Nearby Search (New) или Text Search (New) в свойстве name
каждого элемента массива photos[]
.
Пример см. в разделе Получение имени фотографии .
maxHeightPx и maxWidthPx
Указывает максимальную желаемую высоту и ширину изображения в пикселях. Если изображение меньше указанных значений, будет возвращено исходное изображение. Если изображение больше в любом измерении, оно будет масштабировано в соответствии с меньшим из двух измерений с ограничением исходного соотношения сторон. Оба свойства maxheight и maxwidth принимают целое число от 1 до 4800.
Вы должны указать либо maxHeightPx
, либо maxWidthPx
, либо оба.
Дополнительные параметры
пропуститьHttpRedirect
Если false
(по умолчанию), выполните перенаправление HTTP на изображение, чтобы вернуть изображение. Если true
, пропустите перенаправление и верните ответ JSON, содержащий сведения об изображении. Например:
{ "name": "places/ChIJj61dQgK6j4AR4GeTYWZsKWw/photos/Aaw_FcKly0DEv3EWmDJyHiEqXIP5mowOc99lN1GzBun6KHH52AZ5fFA/media", "photoUri": "https://lh3.googleusercontent.com/a-/AD_cFT-b=s100-p-k-no-mo" }
Эта опция игнорируется для запросов, отличных от HTTP.
Получить название фотографии
Все запросы к сервису фотографий мест должны включать название фоторесурса, возвращаемое в ответ на поиск поблизости, текстовый поиск или запрос сведений о месте. Ответ на эти запросы содержит массив photos[]
, если место имеет связанный фотографический контент.
Каждый элемент photo[]
содержит следующие поля:
name
— строка, содержащая имя ресурса фотографии при выполнении запроса фотографии. Эта строка имеет вид:places/PLACE_ID/photos/PHOTO_RESOURCE
heightPx
— Максимальная высота изображения в пикселях.-
widthPx
— Максимальная ширина изображения в пикселях. -
authorAttributions[]
— Любые необходимые сведения об авторстве. Это поле всегда присутствует, но может быть пустым.
Фотографии, возвращаемые службой фотографий, берутся из разных мест, включая фотографии владельцев бизнеса и фотографии, предоставленные пользователями. В большинстве случаев эти фотографии можно использовать без указания авторства или они будут иметь необходимое указание авторства как часть изображения. Однако если возвращаемый элемент photo
содержит значение в authorAttributions
, вы должны включить дополнительную атрибуцию в свое приложение, где бы вы ни отображали изображение.
В следующем примере показан запрос Place Details, который включает photos
в маску поля, поэтому ответ включает в себя массив photos[]
:
curl -X GET \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ -H "X-Goog-FieldMask: id,displayName,photos" \ https://places.googleapis.com/v1/places/ChIJ2fzCmcW7j4AR2JzfXBBoh6E
photos[]
в ответе. ... "photos" : [ { "name": "places/ChIJ2fzCmcW7j4AR2JzfXBBoh6E/photos/AUacShh3_Dd8yvV2JZMtNjjbbSbFhSv-0VmUN-uasQ2Oj00XB63irPTks0-A_1rMNfdTunoOVZfVOExRRBNrupUf8TY4Kw5iQNQgf2rwcaM8hXNQg7KDyvMR5B-HzoCE1mwy2ba9yxvmtiJrdV-xBgO8c5iJL65BCd0slyI1", "widthPx": 6000, "heightPx": 4000, "authorAttributions": [ { "displayName": "John Smith", "uri": "//maps.google.com/maps/contrib/101563", "photoUri": "//lh3.googleusercontent.com/a-/AD_cFT-b=s100-p-k-no-mo" } ] }, ...
Запросить фото места
Пример запроса ниже возвращает изображение, используя name
его ресурса, изменяя его размер так, чтобы его высота и ширина не превышали 400 пикселей:
https://places.googleapis.com/v1/places/ChIJ2fzCmcW7j4AR2JzfXBBoh6E/photos/AUacShh3_Dd8yvV2JZMtNjjbbSbFhSv-0VmUN-uasQ2Oj00XB63irPTks0-A_1rMNfdTunoOVZfVOExRRBNrupUf8TY4Kw5iQNQgf2rwcaM8hXNQg7KDyvMR5B-HzoCE1mwy2ba9yxvmtiJrdV-xBgO8c5iJL65BCd0slyI1/media?maxHeightPx=400&maxWidthPx=400&key=API_KEY
Ответом на успешный запрос Place Photo является изображение. Тип изображения зависит от типа изначально представленной фотографии.
Если ваш запрос превышает доступную квоту, сервер возвращает статус HTTP 403 и отображает изображение ниже, указывающее, что квота превышена:
Если сервер не может понять ваш запрос, он возвращает статус HTTP 400, что указывает на недействительный запрос. К наиболее частым причинам недействительного запроса относятся:
- Название отправленной фотографии указано неверно.
- Запрос не включал параметр
maxHeightPx
илиmaxWidthPx
. - Значение параметра
maxHeightPx
илиmaxWidthtPx
было установлено равнымnull
. - Срок действия
name
истек. Если срок действияname
истек, отправьте запрос в «Подробности о месте» (новое) , «Поиск поблизости» (новое) или «Текстовый поиск (новое)», чтобы получить новоеname
.
Попробуйте!
API Explorer позволяет вам создавать примеры запросов, чтобы вы могли ознакомиться с API и опциями API.
Чтобы сделать запрос:
- Выберите значок API, , в правой части страницы.
- Установите для параметра
name
значение:places/PLACE_ID/photos/PHOTO_RESOURCE/media
- Установите для
skipHttpRedirect
значениеtrue
, чтобы запрос возвращал ответ в формате JSON. По умолчанию запрос возвращает изображение, которое API Explorer не может отобразить. - Нажмите кнопку «Выполнить» . Во всплывающем окне выберите учетную запись, которую вы хотите использовать для отправки запроса.
На панели API Explorer выберите значок развертывания, , чтобы развернуть окно API Explorer.