Utiliser des jetons de session avec l'API Map Tiles

Développeurs de l'Espace économique européen (EEE)

Un jeton de session est un élément de données (un UUID) utilisé dans les appels REST pour identifier une session, c'est-à-dire une série d'échanges de messages associés. Vous devez inclure un jeton de session dans toutes les requêtes de tuiles 2D et d'images Street View. Vous l'incluez en tant que valeur d'un paramètre session ajouté à toutes les URL de requête.

Dans l'API Map Tiles, un jeton de session représente un ensemble défini d'options d'affichage. Cela signifie que vous n'avez pas besoin de transmettre un ensemble d'options d'affichage à chaque requête de tuile. Vous pouvez utiliser le même jeton de session sur plusieurs clients. Un jeton de session est actuellement valide pendant deux semaines à compter de sa date d'émission, mais cela peut changer. Vous pouvez toujours vérifier l'heure d'expiration d'un jeton de session en consultant le champ expiry dans le message de réponse.

Requête de jeton de session

Pour demander un jeton de session, envoyez une requête HTTPS POST au point de terminaison createSession, comme illustré dans l'exemple suivant. Vous devez envoyer la requête avec un en-tête 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"

Champs obligatoires

mapType

Type de la carte de base. Cette valeur peut être l'une des suivantes :

roadmap
Tuiles de carte Google Maps standards.
satellite
Imagerie satellitaire
terrain
Images du relief. Lorsque vous sélectionnez terrain comme type de carte, vous devez également inclure le type de calque layerRoadmap (décrit dans la section Champs facultatifs).
streetview
Panoramas Street View. Pour en savoir plus, consultez Tuiles Street View.
language

Un tag de langue IETF qui spécifie la langue utilisée pour afficher les informations sur les cartes. Par exemple, en-US spécifie la langue anglaise telle qu'elle est parlée aux États-Unis.

region

Identifiant de région Common Locale Data Repository (deux lettres majuscules) représentant l'emplacement physique de l'utilisateur. Exemple :US

Champs facultatifs

imageFormat
Spécifie le format de fichier à renvoyer. Les valeurs valides sont jpeg ou png. Les fichiers JPEG ne sont pas compatibles avec la transparence. Ils ne sont donc pas recommandés pour les tuiles de superposition. Si vous ne spécifiez pas de imageFormat, le meilleur format pour la tuile est choisi automatiquement.
scale

Augmente la taille des éléments de la carte (comme les libellés des routes), tout en conservant la taille et la zone de couverture de la tuile par défaut. L'augmentation de l'échelle réduit également le nombre d'étiquettes sur la carte, ce qui réduit l'encombrement. Les valeurs suivantes sont des valeurs scale valides :

  • scaleFactor1x : valeur par défaut.
  • scaleFactor2x : double la taille des libellés et supprime les libellés des éléments secondaires.
  • scaleFactor4x : quadruple la taille des libellés et supprime les libellés des éléments secondaires.

Les exemples suivants illustrent l'effet de la mise à l'échelle des éléments de carte.

Facteur de scaling 1x Facteur de scaling 2x
Carte montrant un facteur de scaling de 1x Carte montrant un facteur de scaling de 2x
highDpi
Indique si des tuiles haute résolution doivent être renvoyées. Si le facteur de scaling est augmenté, highDpi est utilisé pour augmenter la taille de la tuile. Normalement, l'augmentation du facteur de scaling agrandit la tuile obtenue en une image de la même taille, ce qui réduit la qualité. Avec highDpi, la taille obtenue est également augmentée, ce qui préserve la qualité. "PPP" signifie "points par pouce". "PPP élevé" signifie que la tuile est affichée avec plus de points par pouce que la normale. Si true, le nombre de pixels dans chacune des dimensions x et y est multiplié par le facteur de scaling (c'est-à-dire 2x ou 4x). La zone de couverture de la tuile reste inchangée. Ce paramètre ne fonctionne qu'avec des valeurs scale de 2x ou 4x. Cela n'a aucun effet sur les tuiles à l'échelle 1x.
Facteur de scaling 1x Facteur de scaling 2x PPP élevé
Carte affichée en résolution standard Carte affichée en résolution haute densité (2x)
layerTypes

Tableau de valeurs qui spécifie les types de calques ajoutés à la carte. Les valeurs possibles sont les suivantes :

layerRoadmap
Obligatoire si vous spécifiez terrain comme type de carte. Peut également être superposé au type de carte satellite. N'a aucun effet sur les tuiles de feuille de route.
layerStreetview
Affiche les rues et les lieux compatibles avec Street View à l'aide de contours bleus sur la carte.
layerTraffic
Affiche les conditions de circulation actuelles.
styles

Tableau d'objets de style JSON qui spécifient l'apparence et le niveau de détail des éléments cartographiques tels que les routes, les parcs et les zones construites. La stylisation permet de personnaliser la carte de base Google standard. Le paramètre styles n'est valide que si le type de carte est roadmap. Pour obtenir la syntaxe complète des styles, consultez la documentation de référence sur les styles.

overlay

Valeur booléenne qui spécifie si layerTypes doit être affiché sous forme de superposition distincte ou combiné avec l'imagerie de base. Lorsque la valeur est true, la carte de base n'est pas affichée. Si vous n'avez pas défini de layerTypes, cette valeur est ignorée.

Par exemple, si vous demandez un type de carte satellite avec une couche layerRoadmap et que overlay est défini sur false, vous obtenez des tuiles équivalentes au type de carte hybrid utilisé dans l'API Maps JavaScript (image de gauche). Les mêmes types de cartes et de calques avec overlay défini sur true génèrent une tuile transparente avec une synthèse géographique, dont le style est adapté à la superposition sur l'imagerie satellitaire (image de droite).

overlay : false overlay : true
Superposition définie sur "false" Superposition définie sur "true"

Le code JSON suivant est un exemple de corps de requête standard contenant des champs obligatoires et facultatifs.

{
  "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" }
      ]
    }
  ]
}

Cet exemple fournit une superposition qui peut être combinée avec l'imagerie satellite. L'exemple contient à la fois une carte routière et une superposition Street View. La carte obtenue est affichée avec les noms et les données en anglais, tel qu'il est parlé aux États-Unis.

Réponse du jeton de session

Le code JSON suivant est un exemple de corps de réponse.

{
  "session": "IgAAAHGU9jnAU4KOAfwY3Bcd6eH_WxQsyocSBAdUnAr9pnvTTNXtF9c_27RBo94ytEXTDg",
  "expiry": "1361828036",
  "tileWidth": 256,
  "tileHeight": 256,
  "imageFormat": "png"
}

La liste suivante contient les définitions des champs du corps de la réponse.

session
Valeur de jeton de session que vous devez inclure dans toutes vos requêtes API Map Tiles.
expiry
Chaîne contenant l'heure (en secondes depuis l'epoch) à laquelle le jeton expire. Un jeton de session est valide pendant deux semaines à compter de sa date de création, mais cette règle peut changer sans préavis.
tileWidth
Largeur des tuiles mesurée en pixels.
tileHeight
Hauteur des tuiles mesurée en pixels.
imageFormat
Format d'image, qui peut être png ou jpeg.