Wprowadzenie
Usługa Place Photos (nowa) to interfejs API tylko do odczytu, który umożliwia dodawanie do aplikacji wysokiej jakości treści fotograficznych. Usługa Place Photos (nowa) zapewnia dostęp do milionów zdjęć przechowywanych w bazie danych Miejsc.
Gdy uzyskujesz informacje o miejscu za pomocą żądania Place Details (nowe), Wyszukiwanie w pobliżu (nowe) lub Wyszukaj tekst (nowe), możesz też poprosić o zasoby zdjęć zawierające odpowiednie treści fotograficzne content. Korzystając z usługi Place Photos (nowa), możesz uzyskać dostęp do zdjęć, do których się odwołujesz, i zmienić rozmiar obrazu na optymalny dla Twojej aplikacji.
Narzędzie APIs Explorer umożliwia wysyłanie żądań w czasie rzeczywistym, dzięki czemu możesz zapoznać się z interfejsem API i jego opcjami:
Żądania Place Photos (nowe)
Żądanie Place Photos (nowe) to żądanie HTTP GET wysyłane na adres URL w formacie:https://places.googleapis.com/v1/NAME/media?key=API_KEY&PARAMETERS
Wymagane są te parametry:
- NAME zawiera nazwę zasobu zdjęcia.
- API_KEY zawiera klucz interfejsu API.
- PARAMETERS zawiera parametr
maxHeightPx, parametrmaxWidthPxlub oba te parametry.
Pełną listę parametrów wymaganych i opcjonalnych znajdziesz poniżej.
Wymagane parametry
Nazwa zdjęcia
Identyfikator tekstowy, który jednoznacznie identyfikuje zdjęcie. Nazwy zdjęć są
zwracane w odpowiedzi na żądanie informacje o miejscu (nowe),
Wyszukiwanie w pobliżu (nowe) lub Wyszukaj tekst (nowe)
we właściwości name każdego elementu tablicy
photos[].
Przykład znajdziesz w sekcji Uzyskiwanie nazwy zdjęcia.
maxHeightPx i maxWidthPx
Określa maksymalną wysokość i szerokość obrazu w pikselach. Jeśli obraz jest mniejszy niż podane wartości, zostanie zwrócony oryginalny obraz. Jeśli obraz jest większy w którymkolwiek wymiarze, zostanie przeskalowany tak, aby pasował do mniejszego z 2 wymiarów, z zachowaniem oryginalnych proporcji. Zarówno właściwość maxheight, jak i maxwidth przyjmują liczbę całkowitą z zakresu od 1 do 4800.
Musisz określić parametr maxHeightPx, maxWidthPx lub oba te parametry.
Parametry opcjonalne
skipHttpRedirect
Jeśli wartość to false (domyślnie), wykonaj przekierowanie HTTP do obrazu, aby go zwrócić.
Jeśli wartość to true, pomiń przekierowanie i zwróć odpowiedź JSON zawierającą szczegóły obrazu.
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.
Uzyskiwanie nazwy zdjęcia
Wszystkie żądania Place Photos (nowe) muszą zawierać nazwę zasobu zdjęcia, która jest zwracana w odpowiedzi na żądanie Wyszukiwanie w pobliżu (nowe), Wyszukaj tekst (nowe) lub informacje o miejscu (nowe). Jeśli miejsce ma powiązane treści fotograficzne, odpowiedź na te żądania zawiera tablicę photos[].
Każdy element photo[] zawiera te pola:
name– ciąg znaków zawierający nazwę zasobu zdjęcia, gdy wykonujesz żądanie zdjęcia. Ten ciąg znaków ma postać:places/PLACE_ID/photos/PHOTO_RESOURCE
heightPx– maksymalna wysokość obrazu w pikselach.widthPx– maksymalna szerokość obrazu w pikselach.authorAttributions[]– wszelkie wymagane informacje o autorstwie. To pole jest zawsze obecne, ale może być puste.
Zdjęcia zwracane przez Place Photos (nowe) pochodzą z różnych źródeł, w tym od właścicieli firm i użytkowników. W większości przypadków można ich używać bez podawania informacji o autorstwie lub wymagane informacje o autorstwie są częścią obrazu. Jeśli jednak zwrócony element photo zawiera wartość w polu authorAttributions, musisz uwzględnić dodatkowe informacje o autorstwie w aplikacji wszędzie tam, gdzie wyświetlasz obraz.
Poniższy przykład pokazuje żądanie Place Details (nowe), które
zawiera photos w masce pola, dzięki czemu odpowiedź
zawiera 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/ChIJ2fzCmcW7j4AR2JzfXBBoh6E
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" } ] }, ...
Żądanie zdjęcia miejsca
Poniższy przykładowy kod żądania zwraca obraz przy użyciu jego zasobu name, zmieniając jego rozmiar tak
aby miał maksymalnie 400 pikseli wysokości i szerokości:
https://places.googleapis.com/v1/places/ChIJ2fzCmcW7j4AR2JzfXBBoh6E/photos/ATKogpeivkIjQ1FT7QmbeT33nBSwqLhdPvIWHfrG1WfmgrFjeZYpS_Ls7c7rj8jejN9QGzlx4GoAH0atSvUzATDrgrZic_tTEJdeITdWL-oG3TWi5HqZoLozrjTaxoAIxmROHfV5KXVcLeTdCC6kmZExSy0CLVIG3lAPIgmvUiewNf-ZHYE4-jXYwPQpWHJgqVosvZJ6KWEgowEA-qRAzNTu9VH6BPFqHakGQ7EqBAeYOiU8Dh-xIQC8FcBJiTi0xB4tr-MYXUaF0p_AqzAhJcDE6FAgLqG1s7EsME0o36w2nDRHA-IuoISBC3SIahINE3Xwq2FzEZE6TpNTFVfgTpdPhV8CGLeqrauHn2I6ePm-2hA8-87aO7aClXKJJVzlQ1dc_JuHz6Ks07d2gglw-ZQ3ibCTF5lMtCF9O-9JHyRQXsfuXw/media?maxHeightPx=400&maxWidthPx=400&key=API_KEY
Odpowiedzią na udane żądanie Place Photos (nowe) jest obraz.
Kody błędów
Żądania Place Photos (nowe) mogą zwracać te kody błędów.
Przekroczono limit miejsca (403)
Jeśli żądanie przekracza dostępny limit, serwer zwraca stan HTTP 403 i wyświetla ten obraz, aby wskazać, że limit został przekroczony:
Nieprawidłowe żądanie (404)
Jeśli serwer nie może zrozumieć żądania, zwraca stan HTTP 400, który wskazuje na nieprawidłowe żądanie. Najczęstsze przyczyny nieprawidłowego żądania:
- Przesłana nazwa zdjęcia została nieprawidłowo określona.
- Żądanie nie zawierało
maxHeightPxanimaxWidthPxparametru. - Wartość parametru
maxHeightPxlub parametrumaxWidthtPxzostała ustawiona nanull. namewygasła. Jeślinamewygaśnie, wyślij żądanie Place Details (nowe), Nearby Search (nowe) lub Text Search (nowe), aby uzyskać nowąname.
Zbyt wiele żądań (429)
Zalecamy wczytywanie zdjęć na żądanie. Jeśli spróbujesz wyświetlić wszystkie obrazy miejsca naraz, serwer może zwrócić stan HTTP 429 wskazujący na wczytywanie zbyt wielu zdjęć jednocześnie. Jeśli otrzymasz ten komunikat o błędzie, skontaktuj się z zespołem pomocy i poproś o zwiększenie limitu.
Wypróbuj
Narzędzie APIs Explorer umożliwia wysyłanie przykładowych żądań, dzięki czemu możesz zapoznać się z interfejsem API i jego opcjami.
Aby wysłać żądanie:
- Po prawej stronie strony kliknij ikonę interfejsu API .
- Ustaw parametr
namena:places/PLACE_ID/photos/PHOTO_RESOURCE/media - Ustaw
skipHttpRedirectnatrue, aby żądanie zwracało odpowiedź JSON response. Domyślnie żądanie zwraca obraz, którego nie można wyświetlić w narzędziu APIs Explorer. - Kliknij przycisk Wykonaj. W oknie wybierz konto, którego chcesz użyć do wysłania żądania.
-
W panelu APIs Explorer kliknij ikonę pełnego ekranu , aby rozwinąć okno APIs Explorer.