Configurare un metodo utilizzando 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à.

Configurare un metodo utilizzando la console API Gateway

Quando si crea un metodo utilizzando la REST API console, si configurano sia la richiesta di integrazione che la richiesta del metodo. Per impostazione predefinita, API Gateway crea il 200 metodo di risposta per il metodo.

Le seguenti istruzioni mostrano come modificare le impostazioni di richiesta del metodo e come creare risposte aggiuntive per il metodo.

Modifica una richiesta del metodo API API Gateway nella console Gateway

Queste istruzioni presuppongono che tu abbia già creato la tua richiesta di metodo. Per ulteriori informazioni su come creare un metodo, vedereConfigurazione di una richiesta di integrazione API tramite la console API Gateway.

  1. Nel riquadro Risorse, scegliete il metodo, 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 IAM le autorizzazioni per controllare l'accesso del client al metodo, selezionateAWS_IAM. Con questa scelta, solo gli utenti dei IAM ruoli a cui è associata la IAM politica corretta possono chiamare questo metodo.

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

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

      In questa politica di accesso, resource-statement è ARN il tuo metodo. È possibile trovare il ARN metodo desiderato selezionando il metodo nella pagina Risorse. Per ulteriori informazioni sull'impostazione delle IAM autorizzazioni, consultaControlla l'accesso a un REST API con IAM autorizzazioni.

      Per creare il IAM ruolo, puoi adattare le istruzioni nel seguente tutorial,Creazione di una funzione Lambda per l'integrazione non proxy 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 Usa gli API autorizzatori Gateway Lambda.

    4. Per utilizzare un pool di utenti di Amazon Cognito, sceglierne uno disponibile in Cognito user pool authorizers (Autorizzazioni pool di utenti Cognito). Crea un pool di utenti in Amazon Cognito e un autorizzatore del pool di utenti Amazon Cognito API in Gateway per visualizzare questa scelta nel menu a discesa. Per informazioni su come creare un'autorizzazione del pool di utenti di Amazon Cognito, consulta Controlla l'accesso alle API REST utilizzando i pool di utenti di Amazon Cognito come autorizzatore.

  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 Richiedi la convalida per REST APIs in API Gateway.

  5. Seleziona la APIchiave richiesta per richiedere una chiave. API Se abilitate, API le chiavi vengono utilizzate nei piani di utilizzo per limitare il traffico dei clienti.

  6. (Facoltativo) Per assegnare un nome SDK di operazione in un Java generato da API GatewayAPI, in Nome operazione, immettete un nome. Ad esempio, per la richiesta del metodo diGET /pets/{petId}, il nome dell'SDKoperazione Java corrispondente è, per impostazione predefinita,GetPetsPetId. Questo nome è costituito dal HTTP verbo (GET) del metodo e dai nomi delle variabili del percorso della risorsa (PetsandPetId). Se impostate il nome dell'operazione comegetPetById, il nome dell'SDKoperazione diventaGetPetById.

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

    1. Scegliete Parametri della stringa di URL query, quindi scegliete 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 Richiedi la convalida per REST APIs in API Gateway.

    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. Scegliete le intestazioni della HTTP richiesta, quindi scegliete 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 Richiedi la convalida per REST APIs in API Gateway.

    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 PATCH HTTP verbo, o POSTPUT, scegliete Request body ed effettuate le seguenti operazioni:

    1. Scegliere Add model (Aggiungi modello).

    2. Per Content-type, inserite un MIME -type (ad esempio,). application/json

    3. Per Modello seleziona un modello dal menu a discesa. I modelli attualmente disponibili per la API includono i modelli di default Empty e Error i modelli, nonché tutti i modelli che avete creato e aggiunto alla collezione Models di. API Per ulteriori informazioni sulla creazione di un modello, consulta Modelli di dati per REST APIs.

      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 codice fortemente tipizzato SDK API in linguaggi come Java, C#, Objective-C e Swift. È obbligatorio solo se la convalida di richiesta è abilitata per il payload.

  10. Seleziona Salva.

Imposta una risposta del metodo API Gateway utilizzando la console Gateway API

Un API metodo può avere una o più risposte. Ogni risposta è indicizzata in base al relativo codice di HTTP stato. Per impostazione predefinita, la console API Gateway aggiunge 200 una risposta alle risposte del 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 API metodo, 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 il HTTPcodice di HTTP stato, inserisci un codice di stato come 200400, o500.

    Quando per una risposta restituita dal backend non è definito un metodo di risposta corrispondente, API Gateway non riesce a 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. Seleziona Salva.

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

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 di risposta al metodo è importante se state generando un payload fortemente tipizzato SDK per il vostro. API