Cette page explique comment configurer un environnement de développement pour créer et déployer votre API backend à l'aide de l'environnement standard Cloud Endpoints Frameworks pour App Engine. Cette page utilise l'exemple de code squelette de Endpoints Frameworks version 2.0 pour présenter les logiciels et les composants de base dont vous avez besoin pour commencer.
Vous souhaiterez peut-être utiliser les archétypes endpoints-skeleton-archetype
ou hello-endpoints-archetype
décrits dans Utiliser Apache Maven et le plug-in App Engine (basé sur la Google Cloud CLI) pour créer un projet Endpoints Frameworks version 2.0.
Pour mieux comprendre la procédure nécessaire au déploiement d'un exemple d'API à l'aide de Endpoints Frameworks, consultez le tutoriel Premiers pas avec Endpoints Frameworks pour App Engine.
Avant de commencer
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Notez l'ID du projet Google Cloud, car vous en aurez besoin ultérieurement.
Installer et configurer le logiciel requis
- Si vous n'avez pas encore installé Java 8, téléchargez le kit de développement Java (JDK) sur le site d'Oracle et installez-le.
- Installez Maven ou Gradle :
Maven
- Téléchargez Apache Maven version 3.3.9 ou supérieure.
- Installez et configurez Maven pour votre environnement de développement local.
Gradle
- Téléchargez et initialisez Google Cloud CLI.
- Exécutez les commandes suivantes :
- Assurez-vous que gcloud CLI est autorisée à accéder à vos données et services sur Google Cloud:
gcloud auth login
- Utilisez les identifiants par défaut de l'application :
gcloud auth application-default login
- Installez le composant
app-engine-java
de Google Cloud SDK:gcloud components install app-engine-java
- Installez la dernière version de Google Cloud SDK et de tous ses composants:
gcloud components update
- Assurez-vous que gcloud CLI est autorisée à accéder à vos données et services sur Google Cloud:
- Créez une application App Engine :
- Définissez le projet par défaut sur l'ID de votre projet Google Cloud :
gcloud config set project YOUR_PROJECT_ID
Remplacez
YOUR_PROJECT_ID
par l'ID de votre projet Google Cloud. Si vous avez d'autres projets Google Cloud et que vous voulez les gérer à l'aide degcloud
, consultez la page Gérer les configurations de gcloud CLI. - Sélectionnez la région dans laquelle vous souhaitez créer votre application App Engine. Consultez la page Emplacements App Engine pour obtenir une liste des régions.
- Créez une application App Engine.
Remplacez
YOUR_PROJECT_ID
par l'ID de votre projet Google Cloud etYOUR_REGION
par la région dans laquelle vous souhaitez créer l'application App Engine.gcloud app create \ --project=YOUR_PROJECT_ID \ --region=YOUR_REGION
- Définissez le projet par défaut sur l'ID de votre projet Google Cloud :
Obtenir l'exemple de squelette Endpoints Frameworks
L'exemple de squelette Endpoints Frameworks version 2.0 contient les scripts de build nécessaires pour Maven et Gradle. Il contient également les fichiers requis pour commencer à créer votre première API.
Clonez le dépôt de l'exemple sur votre ordinateur local :
git clone https://github.com/GoogleCloudPlatform/java-docs-samples
Accédez au répertoire contenant l'exemple de squelette Endpoints Frameworks :
cd java-docs-samples/appengine-java8/endpoints-v2-skeleton/
L'exemple présente la structure de répertoire suivante :
MyApi.java
contient une classe vide que vous pouvez utiliser pour commencer à écrire votre API. Consultez l'exemple Echo afin d'obtenir un exemple de code pour vous aider à démarrer.web.xml
est un fichier standard permettant de configurer un servlet.appengine-web.xml
définit les informations requises pour déployer l'API dans l'environnement standard App Engine à l'aide de Java 8.pom.xml
contient les informations de projet et de configuration utilisées par Maven pour générer le projet et déployer l'API sur App Engine.build.gradle
contient les informations de projet et de configuration utilisées par Gradle pour générer le projet et déployer l'API sur App Engine.
Configurer les fichiers de compilation
Cette section décrit les fichiers pom.xml
de Maven et build.gradle
de Gradle inclus dans l'exemple de code. Les fichiers de compilation sont prêts pour la création de votre API, vous n'avez rien à faire d'autre que de saisir l'ID de votre projet Google Cloud afin qu'il puisse être utilisé dans le nom d'hôte.
À propos de la configuration minimale
Cette section décrit la configuration minimale requise dans votre fichier de construction.
Maven
Dépendances minimales
Vous trouverez ci-dessous les dépendances minimales que doit comporter votre fichier pom.xml
pour que vous puissiez commencer :
- La dépendance
endpoints-framework
contient les classes nécessaires à la création de votre API. - Vous avez besoin du SDK de l'API standard d'App Engine (
appengine-api-sdk
) pour déployer votre projet dans l'environnement standard App Engine. - Le package
javax.servlet
standard est requis pour créer un servlet. - Le package
javax.inject
standard est requis pour permettre l'injection de dépendances.
Appliquer des plug-ins
Les plug-ins suivants sont appliqués afin d'être activés :
- Le plug-in
maven-war-plugin
étend le plug-injava
afin de permettre l'assemblage d'une application Web. - Le plug-in
appengine-maven-plugin
est requis pour exécuter l'API sur App Engine. - Le plug-in
endpoints-framework-maven-plugin
fournit des tâches et des configurations permettant de créer des projets Endpoints Frameworks.
Gradle
Dépendances de plug-ins
Les plug-ins nécessaires pour construire votre API sont présentés ci-dessous :
- Le plug-in Gradle de Endpoints Frameworks sert à générer un document OpenAPI et des bibliothèques clientes.
- Vous avez besoin du plug-in Gradle pour App Engine afin de déployer votre projet dans App Engine.
Appliquer des plug-ins
Les plug-ins suivants sont appliqués afin d'être activés dans votre script de compilation Gradle :
- Le plug-in
java
ajoute des étapes de compilation et de création propres à Java dans votre projet. - Le plug-in
war
étend le plug-injava
afin de permettre l'assemblage d'une application Web. - Le plug-in
endpoints-framework-server
permet la compatibilité côté serveur du plug-in Gradle Endpoints Frameworks. - Le plug-in
appengine
est requis pour exécuter l'API sur App Engine.
Dépendances du projet
Les dépendances suivantes sont utilisées par le projet :
- La dépendance
endpoints-framework
contient les classes nécessaires à la création de votre API. - Le SDK de l'API standard d'App Engine (
appengine-api-sdk
) est nécessaire pour déployer votre projet dans l'environnement standard App Engine. - Le package
javax.servlet
standard est requis pour créer un servlet. - Le package
javax.inject
standard est requis pour permettre l'injection de dépendances.
Définir le nom d'hôte de votre service
Endpoints Frameworks utilise des noms compatibles avec DNS pour identifier de manière unique les services. Étant donné que les ID de projet Google Cloud sont uniques, vous devez utiliser votre ID de projet Google Cloud dans le nom de service de votre API.
Vous devez ajouter votre ID de projet Google Cloud aux fichiers de compilation pour configurer le nom d'hôte de votre service. Le nom d'hôte doit respecter le format suivant :
YOUR_PROJECT_ID.appspot.com
Lorsque vous déployez l'API sur App Engine, une entrée DNS portant un nom au format YOUR_PROJECT_ID.appspot.com
est créée automatiquement. Le nom d'hôte est à la fois le nom du service Cloud Endpoints et le nom de domaine que vous utilisez pour envoyer des requêtes à votre API.
Maven
Dans le champ hostname
, remplacez YOUR_PROJECT_ID
par votre ID de projet Google Cloud.
Gradle
Définissez la variable projectID
sur votre ID de projet Google Cloud. Par exemple : def projectId = 'example-project-12345'
Configurer le servlet Endpoints
Le servlet Endpoints traite les requêtes entrantes et les transmet au service principal exécuté sur App Engine. Le servlet Endpoints est requis pour que votre API soit gérée par Cloud Endpoints.
Pour en savoir plus sur le fichier web.xml
, consultez la page Descripteur de déploiement : web.xml
.
Configurer votre déploiement App Engine
Le fichier appengine-web.xml
permet de définir la configuration de l'environnement standard App Engine lors du déploiement de l'API. Pour en savoir plus, consultez la documentation de référence sur appengine-web.xml
.
Étape suivante
- Écrivez et annotez le code de votre API backend.
- Obtenez plus d'informations sur les annotations.
- Ajoutez la gestion de l'API.
- Déployez et testez votre API.
- Obtenez plus d'informations sur les types de paramètres et de renvois compatibles.