Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Tutorial: creare un file REST API con un'HTTPintegrazione non proxy
In questo tutorial, ne crei una partendo API da zero utilizzando la console Amazon API Gateway. Puoi pensare alla console come a uno studio di API progettazione e utilizzarla per definire le API funzionalità, sperimentarne i comportamenti, crearla e distribuirla gradualmenteAPI. API
Argomenti
Crea un file API con integrazione personalizzata HTTP
Questa sezione illustra i passaggi per creare risorse, esporre metodi su una risorsa, configurare un metodo per ottenere API i comportamenti desiderati e testare e implementare il. API
In questo passaggio, crei un file vuoto. API Nei passaggi seguenti creerai risorse e metodi per connetterti API all'http://petstore-demo-endpoint.execute-api.com/petstore/pets
endpoint, utilizzando un'integrazione non proxyHTTP.
Per creare un API
Accedere alla console API Gateway all'indirizzo https://console.aws.amazon.com/apigateway.
-
Se è la prima volta che utilizzi API Gateway, viene visualizzata una pagina che presenta le funzionalità del servizio. In RESTAPI, scegli Costruisci. Quando viene visualizzato il API popup Crea esempio, scegli OK.
Se non è la prima volta che usi API Gateway, scegli Crea API. In RESTAPI, scegli Build.
Per APInome, inserisci
HTTPNonProxyAPI
.(Facoltativo) In Description (Descrizione), immettere una descrizione.
Mantieni il tipo di API endpoint impostato su Regionale.
Scegli Crea API.
L'albero Resources (Risorse) mostra la risorsa root (/
) senza metodi. In questo esercizio, lo creeremo API con l'integrazione HTTP personalizzata del PetStore sito Web (http://petstore-demo-endpoint.execute-api. com/petstore/pets.) A scopo illustrativo, creeremo una /pets
risorsa come elemento secondario della radice e mostreremo su questa risorsa un GET metodo per consentire a un cliente di recuperare un elenco di articoli Pets disponibili dal sito Web. PetStore
Per creare una risorsa /pets
Scegli Crea risorsa.
Mantieni l'opzione Risorsa proxy disattivata.
Mantieni Percorso risorsa impostato su
/
.Per Resource Name (Nome risorsa) immetti
pets
.Mantieni CORS(Cross Origin Resource Sharing) disattivato.
Scegli Crea risorsa.
In questa fase crei un metodo GET
per la risorsa /pets. Il metodo GET
è integrato con il sito Web http://petstore-demo-endpoint.execute-api.com/petstore/pets
. Altre opzioni per un API metodo includono le seguenti:
-
POST, utilizzato principalmente per creare risorse per bambini.
-
PUT, utilizzato principalmente per aggiornare le risorse esistenti (e, sebbene non consigliato, può essere utilizzato per creare risorse secondarie).
-
DELETE, utilizzato per eliminare risorse.
-
PATCH, utilizzato per aggiornare le risorse.
-
HEAD, utilizzato principalmente negli scenari di test. È uguale GET ma non restituisce la rappresentazione delle risorse.
-
OPTIONS, che può essere utilizzato dai chiamanti per ottenere informazioni sulle opzioni di comunicazione disponibili per il servizio di destinazione.
Per il HTTPmetodo della richiesta di integrazione, devi sceglierne uno supportato dal backend. Per HTTP
oMock
integration
, è logico che la richiesta del metodo e la richiesta di integrazione utilizzino lo stesso HTTP verbo. Per altri tipi di integrazione, la richiesta del metodo utilizzerà probabilmente un HTTP verbo diverso dalla richiesta di integrazione. Ad esempio, per chiamare una funzione Lambda, la richiesta di integrazione deve utilizzare POST
per richiamare la funzione, mentre la richiesta del metodo può utilizzare qualsiasi HTTP verbo a seconda della logica della funzione Lambda.
Per creare un metodo GET
nella risorsa /pets
Seleziona la risorsa /pets.
Scegli Crea metodo.
In Tipo di metodo, seleziona GET.
Per Tipo di integrazione, seleziona integrazione. HTTP
Mantieni disattivata l'integrazione del HTTP proxy.
Per HTTPmetodo, seleziona GET.
Per Endpoint URL, immettere
http://petstore-demo-endpoint.execute-api.com/petstore/pets
.Il PetStore sito Web consente di recuperare un elenco di
Pet
elementi in base al tipo di animale domestico, ad esempio «Cane» o «Gatto», in una determinata pagina.Per Gestione contenuti seleziona Transito.
Scegli i parametri URL della stringa di interrogazione.
Il PetStore sito Web utilizza i parametri
type
e della stringa dipage
query per accettare un input. Si aggiungono i parametri della stringa di query alla richiesta del metodo e li si mappa nei parametri della stringa di query corrispondenti della richiesta di integrazione.Per aggiungere i parametri della stringa di query, effettuate le seguenti operazioni:
Scegliere Add query string (Aggiungi stringa di query).
Per Nome immetti
type
.Mantieni Obbligatorio e Caching disattivati.
Ripeti le fasi precedenti per creare una stringa di query aggiuntiva denominata
page
.Scegli Crea metodo.
Se invii una richiesta, ora il client può fornire un tipo di animale e un numero di pagina come parametri della stringa di query. Questi parametri di input devono essere mappati nei parametri della stringa di query dell'integrazione per inoltrare i valori di input al nostro PetStore sito Web nel backend.
Per mappare i parametri di input alla richiesta di integrazione
Nella scheda Richiesta di integrazione scegli Modifica in Impostazioni della richiesta di integrazione.
Scegliete i parametri della stringa di URL query, quindi effettuate le seguenti operazioni:
Scegli Aggiungi parametro della stringa di query.
Per Nome, immetti
type
.Per Mappato da immetti
method.request.querystring.type
.Mantieni disattivata l'opzione Caching.
Scegli Aggiungi parametro della stringa di query.
Per Nome, immetti
page
.Per Mappato da immetti
method.request.querystring.page
.Mantieni disattivata l'opzione Caching.
Seleziona Salva.
Per testare il API
-
Seleziona la scheda Test. Potrebbe essere necessario scegliere il pulsante freccia destra per visualizzare la scheda.
-
In Stringhe di query immetti
type=Dog&page=2
. Scegli Test (Esegui test).
Il risultato è simile al seguente:
Ora che il test ha avuto esito positivo, possiamo implementarlo API per renderlo disponibile al pubblico.
Scegliere Deploy (Implementa)API.
In Fase, seleziona Nuova fase.
In Stage name (Nome fase) immettere
Prod
.(Facoltativo) In Description (Descrizione), immettere una descrizione.
Seleziona Deploy (Implementa).
-
(Facoltativo) In Dettagli dello stage, per Invoke URL, puoi scegliere l'icona di copia per copiare la tua API chiamata. URL Puoi usarla con strumenti come Postman
e c URL per testare il tuo. API
Se usi an SDK per creare un client, puoi chiamare i metodi esposti da SDK per firmare la richiesta. Per i dettagli sull'implementazione, consulta quello AWS SDK
Nota
Quando vengono apportate modifiche alla tuaAPI, devi ridistribuirla API per rendere disponibili le funzionalità nuove o aggiornate prima di richiamare nuovamente la richiesta. URL
(Facoltativo) Mappatura dei parametri di richiesta
Mappa i parametri di richiesta per un gateway API API
Questo tutorial mostra come creare un parametro path di {petId}
on the API method request per specificare un ID elemento, mapparlo al parametro {id}
path nella richiesta URL di integrazione e inviare la richiesta all'endpoint. HTTP
Nota
Se immetti una lettera maiuscola o minuscola errata, ad esempio una lettera minuscola anziché maiuscola, verranno restituiti errori più avanti nella procedura dettagliata.
Fase 1: Creazione delle risorse
In questo passaggio, crei una risorsa con un parametro path {petId}.
Per creare la risorsa {petId}
-
Seleziona la risorsa /pets, quindi scegli Crea risorsa.
Mantieni l'opzione Risorsa proxy disattivata.
Per Percorso risorsa seleziona /pets.
Per Resource Name (Nome risorsa) immetti
{petId}
.Usa le parentesi graffe (
{ }
) inpetId
modo che /pets/ {} sia visualizzato. petIdMantieni CORS(Cross Origin Resource Sharing) disattivata.
Scegli Crea risorsa.
Fase 2: Creazione e test dei metodi
In questa fase crei un metodo GET
con un parametro di percorso {petId}
.
Per impostare il GET metodo
Seleziona la risorsa/{petId}, quindi scegli il metodo Create.
In Tipo di metodo, seleziona GET.
Per Tipo di integrazione, seleziona HTTPintegrazione.
Mantieni disattivata l'integrazione del HTTP proxy.
Per HTTPmetodo, seleziona GET.
Per EndpointURL, immettere
http://petstore-demo-endpoint.execute-api.com/petstore/pets/{id}
Per Gestione contenuti seleziona Transito.
Mantieni attivata l'opzione Timeout predefinito.
Scegli Crea metodo.
Ora mappate il parametro {petId}
path che avete appena creato al parametro {id}
path nell'HTTPendpoint URL della richiesta di integrazione. L'HTTPendpoint URL era. http://petstore-demo-endpoint.execute-api.com/petstore/pets/{id}
Per mappare il parametro di percorso {petId}
-
Nella scheda Richiesta di integrazione scegli Modifica in Impostazioni della richiesta di integrazione.
Scegli i parametri URL del percorso.
-
APIGateway crea un parametro di percorso per la richiesta di integrazione denominata petId, tuttavia questo parametro di percorso non è valido per l'HTTPendpoint URL impostato come integrazione di backend. L'HTTPendpoint utilizza
{id}
come parametro del percorso. Per Nome, elimina petIde inserisciid
.In questo modo, verrà mappato il parametro di percorso
petId
della richiesta del metodo al parametro di percorsoid
della richiesta di integrazione. Seleziona Salva.
Quindi testa il metodo.
Test del metodo
-
Seleziona la scheda Test. Potrebbe essere necessario scegliere il pulsante freccia destra per visualizzare la scheda.
In Percorso per petId, immettere
4
.Scegli Test (Esegui test).
Se il test ha esito positivo, in Corpo della risposta viene visualizzato quanto segue:
{ "id": 4, "type": "bird", "price": 999.99 }
Fase 3: Implementare API
In questo passaggio, si distribuisce il in API modo da poter iniziare a chiamarlo al di fuori della console API Gateway.
Per distribuire API
Scegliere Deploy (Implementa)API.
Per Fase seleziona Produzione.
(Facoltativo) In Description (Descrizione), immettere una descrizione.
Seleziona Deploy (Implementa).
Fase 4: Test del API
In questo passaggio, esci dalla console API Gateway e utilizzi la tua API per accedere all'HTTPendpoint.
-
Nel pannello di navigazione principale scegli Fase.
-
Nella sezione Dettagli dello stage, scegli l'icona di copia per copiare API la tua chiamataURL.
Dovrebbe essere simile a quanto segue:
https://
my-api-id
.execute-api.region-id
.amazonaws.com/prod -
URLInseriscila nella casella dell'indirizzo di una nuova scheda del browser e aggiungila URL prima di
/pets/4
inviare la richiesta. -
Il browser restituirà quanto segue:
{ "id": 4, "type": "bird", "price": 999.99 }
Passaggi successivi
Puoi personalizzare ulteriormente la tua API attivando la convalida della richiesta, trasformando i dati o creando risposte gateway personalizzate.
Per scoprire altri modi per personalizzare il tuoAPI, consulta i seguenti tutorial:
-
Per ulteriori informazioni sulla convalida della richiesta, consulta Imposta la convalida delle richieste di base in API Gateway.
-
Per informazioni su come trasformare i payload di richiesta e risposta, consulta Imposta le trasformazioni dei dati in API Gateway.
-
Per informazioni su come creare risposte del gateway personalizzate, consulta Imposta una risposta gateway per un REST API utilizzo della console Gateway API.