Questa pagina descrive come configurare l'ambiente di sviluppo per creare ed eseguire il deployment dell'API di backend utilizzando Cloud Endpoints Frameworks per l'ambiente standard di App Engine. In questa pagina viene utilizzato lo scheletro di esempio di codice per la versione 2.0 di endpoint per spiegare il software di base e i componenti necessari per iniziare.
Puoi utilizzare endpoints-skeleton-archetype
o hello-endpoints-archetype
descritti in Utilizzo di Apache Maven e del plug-in App Engine (basato su Google Cloud CLI) per creare un nuovo progetto di Endpoints Frameworks versione 2.0.
Per comprendere meglio i passaggi necessari per il deployment di un'API di esempio mediante endpoint Frameworks, consulta il tutorial Guida introduttiva a Endpoints Frameworks su App Engine.
Prima di iniziare
- Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
-
Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.
-
Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.
-
Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.
-
Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.
- Prendi nota dell'ID progetto Google Cloud perché è necessario in seguito.
Installazione e configurazione del software richiesto
- Se non hai installato Java 8, scarica il Java Development Kit (JDK) dal sito di Oracle e installalo.
- Installa Maven o Gradle:
Maven
- Scarica Apache Maven versione 3.3.9 o successive
- Installa e configure Maven per il tuo ambiente di sviluppo locale.
Gradle
- Scarica e inizializza Google Cloud CLI.
- Esegui questi comandi:
- Assicurati che gcloud CLI sia autorizzato ad accedere a dati e servizi su Google Cloud:
gcloud auth login
- Utilizza le credenziali predefinite dell'applicazione:
gcloud auth application-default login
- Installa il componente
app-engine-java
di Google Cloud SDK:gcloud components install app-engine-java
- Esegui l'aggiornamento alla versione più recente dell'Google Cloud SDK e di tutti i componenti:
gcloud components update
- Assicurati che gcloud CLI sia autorizzato ad accedere a dati e servizi su Google Cloud:
- Crea un'applicazione App Engine:
-
Imposta il progetto predefinito sull'ID progetto Google Cloud:
gcloud config set project YOUR_PROJECT_ID
Sostituisci
YOUR_PROJECT_ID
con l'ID del tuo progetto Google Cloud. Se hai altri progetti Google Cloud e vuoi utilizzaregcloud
per gestirli, consulta Gestione della gcloud CLI gcloud. - Seleziona la regione in cui vuoi creare l'applicazione App Engine. Consulta le località di App Engine per un elenco delle regioni.
- Creare un'applicazione App Engine.
Sostituisci
YOUR_PROJECT_ID
con l'ID del progetto Google Cloud eYOUR_REGION
con la regione in cui vuoi creare l'applicazione App Engine.gcloud app create \ --project=YOUR_PROJECT_ID \ --region=YOUR_REGION
-
Imposta il progetto predefinito sull'ID progetto Google Cloud:
Recupero dell'esempio di scheletro di Endpoints Frameworks
L'esempio di scheletro di Endpoints Frameworks versione 2.0 contiene gli script di build necessari per Maven e Gradle. Contiene anche i file richiesti per iniziare a creare la tua prima API.
Clona il repository di esempio sulla tua macchina locale:
git clone https://github.com/GoogleCloudPlatform/java-docs-samples
Passa alla directory contenente lo scheletro di esempio di Endpoints Frameworks:
cd java-docs-samples/appengine-java8/endpoints-v2-skeleton/
L'esempio ha la seguente struttura di directory:
MyApi.java
contiene una classe vuota che puoi utilizzare per iniziare a scrivere la tua API. Consulta l'esempio di eco per codice campione utile per iniziare.web.xml
è un file standard utilizzato per configurare un servlet.appengine-web.xml
definisce le informazioni necessarie per eseguire il deployment dell'API nell'ambiente standard di App Engine utilizzando Java 8.pom.xml
contiene informazioni sul progetto e sulla configurazione utilizzate da Maven per creare il progetto ed eseguire il deployment dell'API in App Engine.build.gradle
contiene informazioni sul progetto e sulla configurazione utilizzate da Gradle per creare il progetto ed eseguire il deployment dell'API in App Engine.
Configurazione dei file di build
Questa sezione descrive i file Maven pom.xml
e Gradle build.gradle
inclusi nel codice campione. A parte l'inserimento dell'ID progetto Google Cloud in modo che possa essere utilizzato nel nome host, i file di build sono pronti per iniziare a creare l'API.
Informazioni sulla configurazione minima
Questa sezione descrive la configurazione minima necessaria nel file di build.
Maven
Dipendenze minime
Di seguito sono mostrate le dipendenze minime richieste in pom.xml
per iniziare:
- La dipendenza
endpoints-framework
contiene le classi necessarie per la creazione dell'API. - È necessario <atrack-type="tasks" l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="8uk1g2YxVmQFExiHWQoDVLU3uURKQq2GHK/Q1ZkBJNo="track-metadata-position="task-Name">l'ambiente standard App Engine (app Engine standard) per il deployment
appengine-api-sdk
dell'ambiente standard App Engine - Per creare un servlet è richiesto il pacchetto standard
javax.servlet
. - Il pacchetto standard
javax.inject
è necessario per supportare l' inserimento delle dipendenze.
Applicare plug-in
Per abilitarli vengono applicati i seguenti plug-in:
maven-war-plugin
estende il plug-injava
per aggiungere il supporto per l'assemblaggio di un'applicazione web.- L'elemento
appengine-maven-plugin
è necessario per eseguire l'API su App Engine. -
endpoints-framework-maven-plugin
fornisce attività e configurazioni per creare progetti di Endpoints Frameworks.
Gradle
Dipendenze plug-in
Di seguito sono riportati i plug-in necessari per creare l'API:
- Il plug-in Gradle di Endpoints Frameworks viene utilizzato per generare un documento OpenAPI e generare librerie client.
- Per eseguire il deployment del progetto in App Engine, è necessario il plug-in Gradle di App Engine.
Applicare plug-in
I seguenti plug-in vengono applicati per abilitarli nello script di build Gradle:
- Il plug-in
java
aggiunge al progetto passaggi di compilazione e build specifici per Java. - Il plug-in
war
estende il plug-injava
per aggiungere il supporto per l'assemblaggio di un'applicazione web. - Il plug-in
endpoints-framework-server
fornisce supporto lato server per il plug-in Gradle di Endpoints Frameworks. - Il plug-in
appengine
è necessario per eseguire l'API su App Engine.
Dipendenze del progetto
Il progetto utilizza le seguenti dipendenze:
- La dipendenza
endpoints-framework
contiene le classi necessarie per la creazione dell'API. - L'SDK API standard di App Engine (
appengine-api-sdk
) è necessario per eseguire il deployment del progetto nell'ambiente standard di App Engine. - Per creare un
servlet è necessario il pacchetto standard
javax.servlet
. - Il pacchetto standard
javax.inject
è necessario per supportare l' inserimento delle dipendenze.
Definizione del nome host per il servizio
Endpoints Frameworks utilizza nomi compatibili con DNS per identificare in modo univoco i servizi. Poiché gli ID progetto Google Cloud sono garantiti come univoci a livello globale, devi utilizzare l'ID progetto Google Cloud come parte del nome del servizio dell'API.
Devi aggiungere l'ID progetto Google Cloud ai file di build per configurare il nome host per il tuo servizio. Il nome host deve avere il seguente formato:
YOUR_PROJECT_ID.appspot.com
Quando esegui il deployment dell'API in App Engine, viene creata automaticamente una voce DNS con un nome nel
formato YOUR_PROJECT_ID.appspot.com
. Il nome host è sia il nome del servizio Cloud Endpoints sia il nome di dominio che utilizzi per inviare richieste all'API.
Maven
Nel campo hostname
, sostituisci YOUR_PROJECT_ID
con l'ID del tuo progetto Google Cloud.
Gradle
Imposta la variabile projectID
sul tuo ID progetto Google Cloud. Ad esempio:
def projectId = 'example-project-12345'
Configurazione del servlet Endpoints
Il servlet di Endpoints gestisce le richieste in entrata e le inoltra al servizio di backend in esecuzione su App Engine. Il servlet degli endpoint è necessario per la gestione dell'API da parte di Endpoints.
Per maggiori informazioni su web.xml
, consulta
Il descrittore di deployment: web.xml
.
Configurazione del deployment di App Engine
Il file appengine-web.xml
viene utilizzato per definire la configurazione dell'ambiente standard di App Engine quando viene eseguito il deployment dell'API. Consulta il riferimento appengine-web.xml
per ulteriori informazioni.
Passaggi successivi
- Scrivi e annota il codice dell'API di backend.
- Scopri di più sulle annotazioni.
- Aggiungi la gestione delle API.
- Esegui il deployment e il test dell'API.
- Scopri di più sui parametri e sui tipi restituiti supportati.