Come posso configurare la mia API REST API Gateway per passare i parametri della stringa di query a una funzione Lambda di backend o a un endpoint HTTP?

4 minuti di lettura
0

Ho bisogno della mia API REST di Gateway Amazon API per passare i parametri della stringa di query a una funzione AWS Lambda di backend e a un endpoint HTTP.

Breve descrizione

Per configurare una REST API per passare i parametri della stringa di query a una funzione AWS Lambda di backend, utilizza un'integrazione personalizzata Lambda.

Per passare i parametri della stringa di query a un endpoint HTTP, utilizza un'integrazione HTTP personalizzata.

Importante: assicurati di fornire i dati di input come payload della richiesta di integrazione. È consigliabile utilizzare un modello di mappatura per fornire il payload. Per ulteriori informazioni, consulta Mappare i payload di risposta e di richiesta tra metodo e integrazione.

Risoluzione

Passaggio dei parametri della stringa di query a una funzione Lambda di backend

1.    Apri la console Gateway API, quindi scegli la tua API.

2.    Nel riquadro Risorse, scegli il metodo HTTP configurato.

Nota: Se è configurato più di un metodo HTTP per l'API, ripeti i passaggi da 2 a 15 per ogni metodo.

3.    Nel riquadro Esecuzione metodo, scegli Richiesta metodo.

4.    Espandi l'elenco a discesa Parametri della stringa di query URL, quindi scegli Aggiungi stringa di query.

5.    Nel campo Nome, inserisci pet, quindi scegli l'icona del segno di spunta.

6.    Scegli la casella di controllo Campo obbligatorio.

7.    Scegli il riquadro Esecuzione metodo.

8.    Scegli Richiesta di integrazione.

9.    Scegli l'elenco a discesa Modelli di mappatura, quindi scegli Aggiungi modello di mappatura.

10.    Per il campo Content-Type, inserisci application/json, quindi scegli l'icona del segno di spunta.

11.    Nel pop-up che appare, scegli Sì, proteggi questa integrazione.

12.    Per Richiesta corpo passthrough, scegli Quando non ci sono modelli definiti (consigliato).

13.    Nell'editor dei modelli di mappatura, copia e sostituisci lo script esistente con il seguente codice:

{
     "pet": "$input.params('pet')"
}

Nota: per ulteriori informazioni, consulta variabili $input.

14.    Scegli Salva, quindi scegli Implementa l'API.

15.    Per testare il nuovo endpoint dell'API, esegui il seguente comando curl:

curl -X GET https://jp58lnf5vh.execute-api.us-west-2.amazonaws.com/dev/lambda-non-proxy?pet=dog

Importante: assicurati che il comando curl abbia il parametro della stringa di query pet=dog.

Passaggio dei parametri della stringa di query a un endpoint HTTP

1.    Apri la console Gateway API, quindi scegli la tua API.

2.    Nel riquadro Risorse, scegli il metodo HTTP configurato.

Nota: se è configurato più di un metodo HTTP per l'API, ripeti i passaggi da 2 a 10 per ogni metodo.

3.    Nel riquadro Esecuzione metodo, scegli Richiesta metodo.

4.    Espandi l'elenco a discesa Parametri della stringa di query URL, quindi scegli Aggiungi stringa di query.

5.    Nel campo Nome, inserisci tipo, quindi scegli l'icona del segno di spunta.

6.    Scegli il riquadro Esecuzione metodo.

7.    Scegli Richiesta di integrazione.

8.    Espandi la sezione Parametri della stringa di query URL.

Nota: per impostazione predefinita, i parametri della stringa di query della richiesta di metodo sono mappati ai parametri della stringa di query della richiesta di integrazione con lo stesso nome. Per visualizzarlo, aggiorna la pagina della console Gateway API. Per mappare un parametro di richiesta di metodo a un diverso parametro di richiesta di integrazione, elimina prima il parametro di richiesta di integrazione esistente. Quindi, aggiungi una nuova stringa di query con l'espressione di mappatura dei parametri della richiesta del metodo desiderata.

9.    Scegli Salva, quindi scegli Implementa l'API.

10.    Per testare il nuovo endpoint dell'API, esegui il seguente comando curl:

curl -X GET https://jp58lnf5vh.execute-api.us-west-2.amazonaws.com/dev/http-endpoint?pet=dog

Importante: assicurati che il comando curl abbia il parametro della stringa di query pet=dog.


Informazioni correlate

Tutorial: creazione di un'API REST Hello World con integrazione proxy Lambda

Tutorial: creazione di un'API REST API Gateway con l'integrazione non proxy Lambda

Tutorial: creazione di un'API REST con l'integrazione proxy HTTP

Tutorial: creazione di un'API REST con l'integrazione non proxy HTTP