Usługa Place Photo (nowość) to interfejs API dostępny tylko do odczytu, który umożliwia dodawanie do aplikacji wysokiej jakości zdjęć. Usługa Zdjęcia miejsc zapewnia dostęp do milionów zdjęć przechowywanych w bazie danych Miejsc.
Jeśli uzyskujesz informacje o miejscu za pomocą żądania ze szczegółami miejsca, wyszukiwania w pobliżu lub wyszukiwania tekstowego, możesz również poprosić o dodanie odpowiednich zdjęć do zdjęć. Korzystając z usługi Zdjęcia, możesz uzyskać dostęp do wybranych zdjęć i zmienić rozmiar obrazu na taki, który jest optymalny w przypadku Twojej aplikacji.
Eksplorator interfejsów API umożliwia wysyłanie żądań na żywo, dzięki czemu możesz zapoznać się z interfejsem API i jego opcjami:
WypróbujPoproś o zdjęcia
Żądanie dotyczące zdjęcia miejsca to żądanie HTTP GET kierowane do adresu URL w formacie:https://places.googleapis.com/v1/NAME/media?key=API_KEY&PARAMETERS
Gdzie wymagane są te parametry:
- NAME zawiera nazwę zasobu zdjęcia.
- API_KEY zawiera klucz interfejsu API.
- PARAMETERS zawiera parametr
maxHeightPx
,maxWidthPx
lub oba.
Pełną listę wymaganych i opcjonalnych parametrów znajdziesz poniżej.
Wymagane parametry
Nazwa zdjęcia
Identyfikator w formie ciągu znaków, który jednoznacznie identyfikuje zdjęcie. Nazwy zdjęć są zwracane z żądania informacji o miejscu (nowość), wyszukiwania w pobliżu (nowość) lub wyszukiwania tekstowego (nowego) we właściwości name
każdego elementu tablicy photos[]
.
Przykład: Uzyskiwanie nazwy zdjęcia.
Maks.wysokośćPx i maks.Szerokość×
Określa maksymalną żądaną wysokość i szerokość obrazu w pikselach. Jeśli obraz jest mniejszy od podanych wartości, zostanie zwrócony obraz oryginalny. Jeśli obraz będzie większy w każdym z wymiarów, zostanie przeskalowany tak, by pasował do mniejszego z nich, ale tylko zgodnie z pierwotnym współczynnikiem proporcji. Właściwości maxheight i maxwidth przyjmują liczbę całkowitą z przedziału od 1 do 4800.
Musisz podać wartość maxHeightPx
, maxWidthPx
lub obie te wartości.
Parametry opcjonalne
skipHttpRedirect
Jeśli ustawiona jest wartość false
(wartość domyślna), utwórz przekierowanie HTTP do obrazu, aby go zwrócić.
Jeśli true
, pomiń przekierowanie i zwróć odpowiedź JSON zawierającą nieprawidłowy obraz.
Na przykład:
{ "name": "places/ChIJj61dQgK6j4AR4GeTYWZsKWw/photos/Aaw_FcKly0DEv3EWmDJyHiEqXIP5mowOc99lN1GzBun6KHH52AZ5fFA/media", "photoUri": "https://lh3.googleusercontent.com/a-/AD_cFT-b=s100-p-k-no-mo" }
Ta opcja jest ignorowana w przypadku żądań innych niż HTTP.
Uzyskaj nazwę zdjęcia
Wszystkie żądania wysyłane do usługi Zdjęcia miejsc muszą zawierać nazwę zasobu zdjęć zwracane w odpowiedzi na wyszukiwanie w pobliżu, wyszukiwanie tekstowe lub informacje o miejscu. Odpowiedź na te żądania zawiera tablicę photos[]
, jeśli dane miejsce ma powiązane treści fotograficzne.
Każdy element photo[]
zawiera te pola:
name
– ciąg tekstowy zawierający nazwę zasobu zdjęcia, gdy wysyłasz żądanie dotyczące zdjęcia. Ma on postać:places/PLACE_ID/photos/PHOTO_RESOURCE
heightPx
– maksymalna wysokość obrazu w pikselach.widthPx
– maksymalna szerokość obrazu w pikselach.authorAttributions[]
– wszystkie wymagane atrybucje. To pole jest zawsze obecne, ale może być puste.
Zdjęcia zwracane przez usługę Zdjęcia pochodzą z różnych lokalizacji, m.in. od właścicieli firm i zdjęć przesłanych przez użytkowników. W większości przypadków mogą one zostać wykorzystane bez informacji o ich źródle lub będą zawierać wymagane informacje o ich źródle. Jeśli jednak zwracany element photo
zawiera wartość w polu authorAttributions
, musisz podać dodatkowe informacje o autorze w swojej aplikacji zawsze, gdy wyświetla się obraz.
Poniższy przykład przedstawia żądanie dotyczące szczegółów miejsca, które zawiera w masce pola ciąg photos
, dzięki czemu odpowiedź zawiera w odpowiedzi tablicę 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/ChIJ2fzCmcW7j4AR2JzfXBBoh6EPoniżej znajdziesz przykład tablicy
photos[]
w odpowiedzi.
... "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" } ] }, ...
Poproś o zdjęcie miejsca
Przykładowe żądanie poniżej zwraca obraz z zasobem name
, zmieniając jego rozmiar tak, aby miał maksymalnie 400 pikseli wysokości i szerokości:
https://places.googleapis.com/v1/places/ChIJ2fzCmcW7j4AR2JzfXBBoh6E/photos/AUacShh3_Dd8yvV2JZMtNjjbbSbFhSv-0VmUN-uasQ2Oj00XB63irPTks0-A_1rMNfdTunoOVZfVOExRRBNrupUf8TY4Kw5iQNQgf2rwcaM8hXNQg7KDyvMR5B-HzoCE1mwy2ba9yxvmtiJrdV-xBgO8c5iJL65BCd0slyI1/media?maxHeightPx=400&maxWidthPx=400&key=API_KEY
Odpowiedź na Twoją prośbę o zdjęcie miejsca to zdjęcie. Typ zdjęcia zależy od typu pierwotnie przesłanego zdjęcia.
Jeśli żądanie przekracza dostępny limit, serwer zwróci stan HTTP 403 i wyświetli obraz poniżej, aby wskazać, że limit został przekroczony:
Jeśli serwer nie może rozpoznać żądania, zwraca stan HTTP 400, co oznacza, że żądanie jest nieprawidłowe. Najczęstsze przyczyny nieprawidłowego żądania:
- Przesłana nazwa zdjęcia została określona nieprawidłowo.
- Żądanie nie zawierało parametru
maxHeightPx
animaxWidthPx
. - Wartość parametru
maxHeightPx
lubmaxWidthtPx
została ustawiona nanull
. - Ważność dokumentu
name
wygasła. Jeśliname
utraci ważność, wyślij prośbę o Szczegóły miejsca (nowe), Wyszukiwanie w pobliżu (nowość) lub Wyszukiwanie tekstowe (nowość), aby uzyskać nowyname
.
Wypróbuj
Eksplorator interfejsów API umożliwia wykonywanie przykładowych żądań, aby ułatwić Ci zapoznanie się z interfejsem API i jego opcjami.
Aby wysłać prośbę:
- Wybierz ikonę interfejsu API po prawej stronie.
- Ustaw parametr
name
na:places/PLACE_ID/photos/PHOTO_RESOURCE/media
- Ustaw
skipHttpRedirect
natrue
, aby żądanie zwracało odpowiedź JSON. Domyślnie żądanie zwraca obraz, którego nie może wyświetlić Eksplorator interfejsów API. - Kliknij przycisk Wykonaj. W wyskakującym okienku wybierz konto, którego chcesz użyć, aby przesłać prośbę.
W panelu Eksplorator interfejsów API wybierz ikonę rozwijania (), aby rozwinąć okno API Explorer.