Creazione di un'API
Prerequisiti
Prima di poter creare un'API in API Gateway, assicurati di disporre di:
- Preparare l'ambiente di sviluppo come descritto in Configurazione dell'ambiente di sviluppo.
Requisiti per gli ID API
Molti dei comandi gcloud
riportati di seguito richiedono di specificare l'ID dell'API nel formato: API_ID.
API Gateway applica i seguenti requisiti per l'ID API:
- Deve avere una lunghezza massima di 63 caratteri.
- Deve contenere solo lettere minuscole, numeri o trattini.
- Non deve iniziare con un trattino.
- Non deve contenere un trattino basso.
Creazione di un'API
Per creare un'API:
Convalida l'ID progetto restituito dal seguente comando per assicurarti che il servizio non venga creato nel progetto sbagliato.
gcloud config list project
Se devi modificare il progetto predefinito, esegui il seguente comando e sostituisci PROJECT_ID con l'ID progetto Google Cloud in cui vuoi creare il servizio::
gcloud config set project PROJECT_ID
Se l'ID progetto contiene due punti (
:
), consulta Progetti basati sul dominio per ulteriori dettagli sulla creazione di un' API nel progetto.Visualizza la guida per il comando
apis create
:gcloud api-gateway apis create --help
Esegui il comando seguente per creare l'API:
gcloud api-gateway apis create API_ID --project=PROJECT_ID
dove:
- API_ID specifica l'ID della nuova API. Consulta i requisiti per gli ID API per le linee guida per la denominazione delle API.
- PROJECT_ID specifica l'ID progetto Google Cloud.
Durante la creazione dell'API, API Gateway visualizza le informazioni nel terminale.
Al termine, puoi utilizzare il seguente comando per visualizzare i dettagli della nuova API:
gcloud api-gateway apis describe API_ID --project=PROJECT_ID
Questo comando restituisce quanto segue:
createTime: '2020-02-29T21:52:20.297426875Z' displayName: API_ID managedService: MANAGED_SERVICE_NAME.apigateway.PROJECT_ID.cloud.goog name: projects/PROJECT_ID/locations/global/apis/API_ID state: ACTIVE updateTime: '2020-02-29T21:52:20.647923711Z'
gcloud options
Google Cloud CLI accetta molte opzioni, tra cui quelle descritte nella documentazione di riferimento di gcloud. Inoltre, per API Gateway puoi impostare le seguenti opzioni durante la creazione di un'API:
--async
: restituisce immediatamente il controllo al terminale, senza attendere il completamento dell'operazione.--display-name=NAME
: specifica il nome visualizzato dell'API, ovvero il nome mostrato nell'interfaccia utente. Non utilizzare spazi nel nome. Utilizza i trattini e i trattini bassi. Il valore predefinito è API_ID.--labels=KEY1=VALUE1,KEY2=VALUE2,...
: specifica le etichette associate alla configurazione dell'API.--managed-service
: specifica un servizio gestito preesistente (ad esempio un servizio Endpoints esistente) per l'API.
Progetti basati sul dominio
Se il progetto è limitato al tuo dominio, l'ID progetto include il nome del dominio seguito dai due punti (:
), ad esempio example.com:my-project
. Devi fornire un servizio gestito valido quando crei un'API in un progetto a livello di dominio.
Se utilizzi gcloud
, fornisci il nome del servizio gestito utilizzando il flag --managed-service
, come descritto in Opzioni gcloud.
API di schede
Per elencare tutte le API in un progetto:
gcloud api-gateway apis list --project=PROJECT_ID
Questo comando restituisce l'output nel seguente formato:
NAME DISPLAY_NAME MANAGED_SERVICE STATE projects/PROJECT_ID/locations/global/apis/API_ID API_ID MANAGED_SERVICE_NAME.apigateway.PROJECT_ID.cloud.goog ACTIVE
Utilizza l'ID progetto e l'ID API per ottenere informazioni dettagliate sull'API:
gcloud api-gateway apis describe API_ID --project=PROJECT_ID
Aggiornamento di un'API
Dopo la creazione, puoi aggiornare le etichette e il nome visualizzato di un'API esistente.
Utilizza le seguenti opzioni gcloud
per aggiornare un'API esistente:
--display-name
--update-labels
--clear-labels
--remove-labels
Ad esempio:
gcloud api-gateway apis update API_ID --project=PROJECT_ID \ --update-labels=a=1,b=2
Utilizza il seguente comando per visualizzare tutte le opzioni di aggiornamento:
gcloud api-gateway apis update --help
Eliminazione di un'API
Per eliminare un'API, devi:
- Elimina le configurazioni API associate all'API.
- Elimina l'API.
Per eliminare un'API:
Determina l'elenco delle configurazioni API associate all'API:
gcloud api-gateway api-configs list --api=API_ID --project=PROJECT_ID
Elimina ogni configurazione API associata all'API:
gcloud api-gateway api-configs delete CONFIG_ID --api=API_ID --project=PROJECT_ID
Elimina l'API:
gcloud api-gateway apis delete API_ID --project=PROJECT_ID