Ce guide met en évidence les principales différences entre l'ancien service Places et la nouvelle classe Place. La mise à niveau vers la classe Place offre des avantages considérables, y compris des performances améliorées et un nouveau modèle de tarification. Pour tirer le meilleur parti de Places et vous assurer que vos applications sont à jour, familiarisez-vous avec les modifications décrites dans ce guide.
Bonnes pratiques de facturation pour la migration
Ces conseils s'appliquent si votre utilisation de l'API est suffisamment élevée pour passer à la tarification de deuxième niveau. Lorsque vous migrez vers une version plus récente d'une API, vous êtes également facturé pour un autre SKU. Pour éviter une augmentation des coûts au cours du mois de votre transition, nous vous recommandons de passer aux nouvelles API en production le plus tôt possible dans le mois. Cela vous permettra d'atteindre les niveaux de prix mensuels les plus rentables au cours du mois de la migration. Pour en savoir plus sur les niveaux de tarification, consultez la page des tarifs et les questions fréquentes sur les tarifs.
Activer l'API Places
La classe Place s'appuie sur le service de l'API Places. Pour utiliser les fonctionnalités de la nouvelle classe Place, vous devez d'abord activer l'API Places (nouvelle version) dans votre projet Google Cloud. Pour en savoir plus, consultez Premiers pas.
Changements généraux
Le tableau suivant présente quelques-unes des principales différences entre PlacesService
et Place
:
PlacesService (ancienne) |
Place (Nouveau) |
---|---|
Les méthodes nécessitent l'utilisation d'un rappel pour gérer l'objet de résultats et la réponse google.maps.places.PlacesServiceStatus . |
Utilise des promesses et fonctionne de manière asynchrone. |
Les méthodes nécessitent une vérification PlacesServiceStatus . |
Aucune vérification d'état requise. Vous pouvez utiliser la gestion des erreurs standard. |
Les champs de données de lieu sont mis en forme à l'aide de la casse snake. | Les champs de données de lieu sont mis en forme en camel case. |
Limité à un ensemble fixe de types de lieux et de champs de données de lieux. | Fournit une sélection élargie de types de lieux et de champs de données de lieux régulièrement mis à jour. |
Modifications spécifiques à l'API
La classe Place fournit une API pour utiliser la bibliothèque Places et est compatible avec les modèles d'utilisation modernes, comme les promesses. La classe Place expose les mêmes champs de données de lieu et types de lieux que l'ancien service Places, et inclut de nombreuses nouvelles valeurs pour les champs de données de lieu et les types de lieux.
Ce tableau montre comment les fonctionnalités du service Places correspondent à celles de la classe Place :
Charger la bibliothèque Places
La façon dont votre application charge la bibliothèque Places dépend du chargeur d'amorçage utilisé. Si votre application utilise l'importation de bibliothèques dynamiques, vous pouvez charger les bibliothèques nécessaires lors de l'exécution à l'aide de l'opérateur await
pour appeler importLibrary()
, comme indiqué ci-dessous :
const { Place } = await google.maps.importLibrary("places");
Si votre application utilise la balise de chargement de script en direct, demandez la bibliothèque places
dans le script du chargeur :
<script async
src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&loading=async&libraries=places&callback=initMap">
</script>
Découvrez comment charger l'API Maps JavaScript.
Cette section inclut les guides suivants pour vous aider à migrer vos applications afin d'utiliser la dernière version de l'API Places :
- Migrer vers Place Details
- Migrer vers Text Search (nouveau)
- Migrer vers la recherche à proximité (nouveau)
- Migrer vers Place Photos
- Migrer vers Place Reviews
- Migrer vers Place Autocomplete