Configurazione di un metodo mediante la console API Gateway - Amazon API Gateway

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à.

Configurazione di un metodo mediante la console API Gateway

Prima di configurare un metodo API, verifica quanto segue:

Configurazione di una richiesta del metodo di API Gateway nella console API Gateway

Per utilizzare la console API Gateway per specificare una richiesta/risposta del metodo di un'API e per configurare le modalità di autorizzazione delle richieste da parte del metodo, segui queste istruzioni.

Nota

Queste istruzioni presuppongono che sia già stata completata la procedura in Configurazione di una richiesta di integrazione API tramite la console API Gateway. Usale per integrare le informazioni fornite in Creazione di un'API REST di API Gateway con integrazione Lambda.

  1. Nel riquadro Risorse, scegliete il metodo desiderato, quindi scegliete la scheda Richiesta metodo.

  2. Nella sezione Impostazioni della richiesta del metodo scegli Modifica.

  3. Per Autorizzazione seleziona un sistema di autorizzazione disponibile.

    1. Per abilitare l'accesso aperto al metodo per qualsiasi utente, scegli Nessuno. Questa fase può essere ignorata se l'impostazione predefinita non è stata modificata.

    2. Per utilizzare le autorizzazioni IAM per controllare l'accesso del client al metodo, scegli AWS_IAM. In questo modo il metodo potrà essere chiamato solo dagli utenti dei ruoli IAM a cui è collegata la policy IAM corretta.

      Per creare il ruolo IAM, specifica una policy di accesso con un formato simile al seguente:

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "execute-api:Invoke" ], "Resource": [ "resource-statement" ] } ] }

      In questa policy di accesso resource-statement è il valore del campo ARN nella sezione Authorization Settings (Impostazioni autorizzazione). Per ulteriori informazioni sull'impostazione delle autorizzazioni IAM, consulta Controllo degli accessi a un'API con le autorizzazioni IAM.

      Per creare il ruolo IAM, puoi adattare le istruzioni disponibili nella procedura per la creazione di un ruolo di invocazione Lambda e della relativa policy e nella procedura per la creazione di un ruolo di esecuzione Lambda e della rispettiva policy nella sezione Creazione di funzioni Lambda della Creazione di un'API REST di API Gateway con integrazione Lambda.

    3. Per utilizzare un sistema di autorizzazione Lambda, seleziona un token o un sistema di autorizzazione di richiesta. Affinché questa scelta sia visualizzata nel menu a discesa, è necessario creare un sistema di autorizzazione Lambda. Per informazioni su come creare un'autorizzazione Lambda, consulta Uso di autorizzazioni Lambda di API Gateway.

    4. Per utilizzare un pool di utenti di Amazon Cognito, sceglierne uno disponibile in Cognito user pool authorizers (Autorizzazioni pool di utenti Cognito). Affinché questa scelta sia visualizzata nel menu a discesa, è necessario creare un pool di utenti in Amazon Cognito e un'autorizzazione del pool di utenti di Amazon Cognito in API Gateway. Per informazioni su come creare un'autorizzazione del pool di utenti di Amazon Cognito, consulta Controllo degli accessi a un'API REST utilizzando pool di utenti di Amazon Cognito come autorizzazione.

  4. Per specificare la convalida della richiesta, seleziona un valore dal menu a discesa Validatore richiesta. Per disattivare la convalida della richiesta, seleziona Nessuno. Per ulteriori informazioni su ciascuna opzione, consulta Utilizzo della convalida delle richieste in Gateway Amazon API.

  5. Seleziona Chiave API necessaria per richiedere una chiave API. Quando sono abilitate, le chiavi API vengono utilizzate nei piani di utilizzo per limitare il traffico client.

  6. (Facoltativo) Per assegnare un nome di operazione in un SDK Java di questa API generata da Gateway API, immetti un nome in Nome operazione. Ad esempio, per la richiesta del metodo GET /pets/{petId}, il nome di operazione dell'SDK Java corrispondente è GetPetsPetId per impostazione predefinita. Questo nome viene costruito dal verbo HTTP del metodo (GET) e dai nomi delle variabili di percorso della risorsa (Pets e PetId). Se imposti il nome dell'operazione come getPetById, il nome di operazione dell'SDK diventa GetPetById.

  7. Per aggiungere un parametro stringa di query al metodo, procedi come indicato di seguito:

    1. Scegli Parametri della stringa di query URL, quindi seleziona Aggiungi stringa di query.

    2. In Nome digita il nome del parametro della stringa di query.

    3. Se il parametro della stringa di query appena creato viene usato per la convalida della richiesta, scegli l'opzione Obbligatorio. Per ulteriori informazioni sulla convalida della richiesta, consulta Utilizzo della convalida delle richieste in Gateway Amazon API.

    4. Se il parametro della stringa di query appena creato viene usato come parte di una chiave di caching, seleziona l'opzione Caching. Per ulteriori informazioni sul caching, consulta Uso dei parametri di metodo o di integrazione come chiavi di cache per indicizzare le risposte memorizzate nella cache.

    Per rimuovere il parametro della stringa di query, scegli Rimuovi.

  8. Per aggiungere un parametro di intestazione al metodo, procedi come indicato di seguito:

    1. Scegli Intestazioni di richiesta HTTP, quindi seleziona Aggiungi intestazione.

    2. Per Nome immetti il nome dell'intestazione.

    3. Se l'intestazione appena creata viene usata per la convalida della richiesta, scegli l'opzione Obbligatorio. Per ulteriori informazioni sulla convalida della richiesta, consulta Utilizzo della convalida delle richieste in Gateway Amazon API.

    4. Se l'intestazione appena creata viene usata come parte di una chiave di caching, scegli l'opzione Caching. Per ulteriori informazioni sul caching, consulta Uso dei parametri di metodo o di integrazione come chiavi di cache per indicizzare le risposte memorizzate nella cache.

    Per rimuovere l'intestazione, scegli Rimuovi.

  9. Per dichiarare il formato del payload di una richiesta di metodo con il verbo HTTP POST, PUT o PATCH, espandi Corpo della richiesta e procedi come segue:

    1. Scegliere Add model (Aggiungi modello).

    2. Per Content-Type immetti un tipo MIME (ad esempio application/json).

    3. Per Modello seleziona un modello dal menu a discesa. I modelli attualmente disponibili per l'API includono i modelli Empty ed Error predefiniti e tutti i modelli creati e aggiunti alla raccolta Models (Modelli) dell'API. Per ulteriori informazioni sulla creazione di un modello, consulta Informazioni sui modelli di dati.

      Nota

      Il modello è utile per informare il client del formato dati previsto di un payload, nonché per generare un modello di mappatura. È importante generare un SDK tipizzato in modo sicuro dell'API in linguaggi come Java, C#, Objective-C e Swift. È obbligatorio solo se la convalida di richiesta è abilitata per il payload.

  10. Selezionare Salva.

Configurazione di una risposta del metodo di API Gateway tramite console API Gateway

Un metodo API può avere una o più risposte. Ogni risposta è indicizzata dal rispettivo codice di stato HTTP. Per impostazione predefinita, la console API Gateway aggiunge la risposta 200 alle risposte di metodo. Puoi modificarla in modo che il metodo restituisca 201. Puoi aggiungere altre risposte, ad esempio 409 per negare l'accesso e 500 per le variabili di fase non inizializzate utilizzate.

Per utilizzare la console API Gateway per modificare, eliminare o aggiungere una risposta a un metodo API, segui queste istruzioni.

  1. Nel riquadro Risorse, scegli il metodo, quindi scegli la scheda Metodo di risposta. Potrebbe essere necessario scegliere il pulsante freccia destra per visualizzare la scheda.

  2. Nella sezione Impostazioni risposta metodo scegli Crea risposta.

  3. Per Codice di stato HTTP inserisci un codice di stato HTTP come 200, 400 o 500.

    Se per una risposta restituita dal back-end non è definita una risposta del metodo corrispondente, API Gateway non è in grado di restituire la risposta al client. Restituisce invece una risposta di errore 500 Internal server error.

  4. Seleziona Add header (Aggiungi intestazione).

  5. Per Nome intestazione immetti un nome.

    Per restituire un'intestazione dal back-end al client, aggiungi l'intestazione nella risposta del metodo.

  6. Scegli Aggiungi modello per definire un formato del corpo della risposta del metodo.

    Immetti il tipo di supporto del payload della risposta per Tipo di contenuto e seleziona un modello dal menu a discesa Modelli.

  7. Selezionare Salva.

Per modificare una risposta esistente, passa alla risposta del metodo e scegli Modifica. Per modificare il codice di stato HTTP, scegli Elimina e crea una nuova risposta del metodo.

Per ogni risposta restituita dal back-end, deve essere configurata una risposta compatibile come risposta del metodo. Tuttavia le intestazioni delle risposte del metodo di configurazione e il modello di payload sono facoltativi, a meno che non si mappi il risultato dal back-end alla risposta del metodo prima della restituzione al client. Inoltre un modello di payload della risposta è importante quando si genera un SDK tipizzato in modo sicuro per l'API.