Token sesji to element danych (UUID), który jest używany w wywołaniach REST do identyfikowania sesji, czyli serii powiązanych wymian komunikatów. W przypadku żądań dotyczących obrazów 2D i zdjęć Street View musisz dołączyć token sesji.
Dołączasz go jako wartość parametru session
dołączonego do wszystkich adresów URL żądań.
W interfejsie Map Tiles API token sesji reprezentuje zdefiniowany zestaw opcji wyświetlania. Oznacza to, że nie musisz przekazywać zestawu opcji wyświetlania z każdą prośbą o płytkę. Możesz używać tego samego tokena sesji w różnych klientach.
Token sesji jest obecnie ważny przez 2 tygodnie od momentu jego wygenerowania, ale może się to zmienić. Czas wygaśnięcia tokena sesji możesz sprawdzić w polu expiry
w wiadomości z odpowiedzią.
Żądanie tokena sesji
Aby poprosić o token sesji, wyślij żądanie HTTPS POST do punktu końcowego createSession
, jak pokazano w tym przykładzie. Żądanie musisz wysłać z nagłówkiem Content-Type: application/json
.
curl -X POST -d '{ "mapType": "streetview", "language": "en-US", "region": "US" }' \ -H 'Content-Type: application/json' \ "https://tile.googleapis.com/v1/createSession?key=YOUR_API_KEY"
Pola wymagane
mapType
Typ mapy podstawowej. Ta wartość może być jedną z tych:
roadmap
- Standardowe elementy mapy w Mapach Google.
satellite
- Zdjęcia satelitarne.
terrain
- Zdjęcia terenu. Jeśli wybierzesz
terrain
jako typ mapy, musisz też uwzględnić typ warstwylayerRoadmap
(opisany w sekcji Opcjonalne pola). streetview
- panoramy Street View. Więcej informacji znajdziesz w artykule Karty Street View.
language
Tag języka IETF określający język używany do wyświetlania informacji na kafelkach. Na przykład
en-US
określa język angielski używany w Stanach Zjednoczonych.region
Identyfikator regionu Repozytorium danych wspólnego lokalizatora (dwie duże litery) reprezentujący fizyczną lokalizację użytkownika. Na przykład:
US
.
Pola opcjonalne
imageFormat
- Określa format pliku do zwrócenia. Prawidłowe wartości to
jpeg
lubpng
. Pliki JPEG nie obsługują przezroczystości, dlatego nie zalecamy ich używania do tworzenia kafelków nakładki. Jeśli nie podasz wartościimageFormat
, najlepszy format kafelka zostanie wybrany automatycznie. scale
Powiększa rozmiar elementów mapy (np. etykiet dróg), zachowując rozmiar i obszar pokrycia domyślnej płytki. Zwiększenie skali zmniejsza też liczbę etykiet na mapie, co zmniejsza jej zaśmiecanie. Te wartości są prawidłowe:
scale
:scaleFactor1x
: wartość domyślna.scaleFactor2x
: podwaja rozmiar etykiety i usuwa etykiety funkcji drugorzędnych.scaleFactor4x
: czterokrotnie zwiększa rozmiar etykiety i usuwa etykiety funkcji drugorzędnych.
Poniższe przykłady pokazują efekt skalowania elementów mapy.
Współczynnik skalowania 1x | Współczynnik skalowania 2x |
---|---|
![]() |
![]() |
highDpi
- Określa, czy mają być zwracane płytki o wysokiej rozdzielczości. Jeśli współczynnik skalowania jest zwiększony, do zwiększenia rozmiaru płytki służy element
highDpi
. Zwykle zwiększenie współczynnika skalowania powoduje powiększenie otrzymanego kafelka do rozmiaru obrazu, co obniża jakość. W przypadkuhighDpi
rozmiar wynikowy jest również zwiększany, zachowując jakość. DPI to skrót od „Dots per Inch” (punkty na cal). Wysoka rozdzielczość oznacza, że kafelek jest renderowany przy użyciu większej liczby punktów na cal niż zwykle. Jeślitrue
, liczba pikseli w każdym z wymiarów x i y jest mnożona przez współczynnik skalowania (czyli 2 x lub 4 x). Obszar pokrycia kafelka pozostaje bez zmian. Ten parametr działa tylko z wartościamiscale
równymi 2x lub 4x. Nie ma to wpływu na kafelki o skali 1 x.
Współczynnik skalowania 1x | Współczynnik skalowania 2x High DPI |
---|---|
![]() |
![]() |
layerTypes
Tablica wartości określająca typy warstw dodanych do mapy. Prawidłowe wartości:
layerRoadmap
- Wymagane, jeśli jako typ mapy wybierzesz
terrain
. Opcjonalnie można też nałożyć je na mapę typusatellite
. Nie ma wpływu na kafelki mapy drogowej. layerStreetview
- Pokazuje ulice i lokalizacje dostępne w Street View za pomocą niebieskich obrysów na mapie.
layerTraffic
- Pokazuje aktualne warunki na drogach.
styles
Tablica obiektów stylu JSON, które określają wygląd i poziom szczegółowości elementów mapy, takich jak drogi, parki i obszary zabudowane. Stylizacja służy do dostosowywania standardowej mapy bazowej Google. Parametr
styles
jest prawidłowy tylko wtedy, gdy typ mapy toroadmap
. Pełną składnię stylów znajdziesz w dokumentacji dotyczącej stylów.overlay
Wartość logiczna określająca, czy
layerTypes
ma być renderowana jako osobna nakładka, czy połączona z obrazem podstawowym. Gdytrue
, mapa podstawowa nie jest wyświetlana. Jeśli nie zdefiniujesz właściwościlayerTypes
, ta wartość zostanie zignorowana.
Na przykład żądanie typu mapy satellite
z warstwą layerRoadmap
i wartością overlay
ustawioną na false
powoduje, że płytki są równoważne z typem mapy hybrid
używanym w Maps JavaScript API (zdjęcie po lewej). Te same mapy i typy warstw z wartością overlay
równą true
powodują, że kafelek jest przezroczysty z nałożoną mapą, która jest odpowiednio stylizowana do nakładania na zdjęcia satelitarne (zdjęcie po prawej stronie).
overlay : false |
overlay : prawda |
---|---|
![]() |
![]() |
Ten kod JSON to przykład typowego nagłówka żądania, który zawiera zarówno pola wymagane, jak i opcjonalne.
{
"mapType": "satellite",
"language": "en-US",
"region": "us",
"layerTypes": [ "layerRoadmap", "layerStreetview" ],
"overlay": true,
"scale": "scaleFactor1x",
"styles": [
{
"stylers": [
{ "hue": "#00ffe6" },
{ "saturation": -20 }
]
},{
"featureType": "road",
"elementType": "geometry",
"stylers": [
{ "lightness": 100 },
{ "visibility": "simplified" }
]
}
]
}
Ten przykład pokazuje nakładkę, która nadaje się do łączenia z obrazami satelitarnymi. Przykład zawiera zarówno mapę drogową, jak i nakładkę widoku ulicy. Wygenerowana mapa zawiera nazwy i dane w języku angielskim, ponieważ jest to język używany w Stanach Zjednoczonych.
apiOptions
: tablica wartości określająca dodatkowe opcje do zastosowania.
Obsługiwane opcje:
MCYJ5E517XR2JC
– włącz nowy styl mapy. W okresie akceptacji żądania będą miały dotychczasowy styl, chyba że określisz tę wartość.
Odpowiedź tokena sesji
Poniżej znajduje się przykładowy kod JSON odpowiedzi.
{
"session": "IgAAAHGU9jnAU4KOAfwY3Bcd6eH_WxQsyocSBAdUnAr9pnvTTNXtF9c_27RBo94ytEXTDg",
"expiry": "1361828036",
"tileWidth": 256,
"tileHeight": 256,
"imageFormat": "png"
}
Na liście poniżej znajdziesz definicje pól w ciele odpowiedzi.
session
- Wartość tokenu sesji, którą musisz uwzględnić we wszystkich żądaniach interfejsu Map Tiles API.
expiry
- Ciąg zawierający czas (w sekundach od początku epoki), w którym token wygasa. Token sesji jest ważny przez 2 tygodnie od momentu jego utworzenia, ale te zasady mogą ulec zmianie bez powiadomienia.
tileWidth
- Szerokość płytek w pikselach.
tileHeight
- Wysokość płytek w pikselach.
imageFormat
- Format obrazu, który może być
png
lubjpeg
.