2016-02-18 11 views
8

Ho creato una risorsa in ApiGateway di Amazon. Sta indicando una funzione Lambda. Questo è stato colpito da un'applicazione mobile nativa (Android e iOS) che è già in circolazione.Come puntare ApiGateway a uno specifico alias Lambda

Ora voglio modificare la funzione Lambda, ma non vedo alcun modo per modificare la risorsa ApiGateway in modo che punti ad un alias del lambda. Questa è la prima volta che gioco con una di queste tecnologie e non vedo un meccanismo semplice per gestirlo nella console di aws.

Come posso modificare la risorsa ApiGateway in modo che punti al mio alias lambda in modo che possa modificare il trunk senza influire sui client esistenti?

risposta

15

Sotto Integrazione Tipo -> Lambda funzionare è necessario aggiungere un riferimento alla variabile fase MyLambdaFuntionName:${stageVariables.lambdaAlias} e poi per ogni fase impostare il lambdaAlias nella scheda Variabili della fase di conseguenza (lambdaAlias ​​= dev, lambdaAlias ​​= prod, ecc)

C'è un esempio con le immagini qui: https://aws.amazon.com/blogs/compute/using-api-gateway-stage-variables-to-manage-lambda-functions/

suo genere di nascosto verso il fondo della pagina che inizia con "in alternativa, è possibile combinare i nomi statici"

+3

Si noti che quando si specifica un nome di funzione Lambda come valore di variabile stage, è necessario configurare manualmente le autorizzazioni sulla funzione Lambda. Vedi anche http://docs.aws.amazon.com/apigateway/latest/developerguide/stage-variables.html –

+0

Grazie Ryan, lo guarderò questo fine settimana e accetterò questa risposta quando avrò inizio. – digitaljoel

3

Per il Googler in seguito, essereattento ad aggiungere permessi con l'alias corretto come yourfunc: prod non solo yourfunc. Ciò significa che se stai pianificando di utilizzare 3 alias per richiamare le funzioni lambda, devi aggiungerne 3.

+0

La cosa bella è che la politica si attacca con l'alias così come si punta l'alias ad altre versioni della funzione lambda, funzionerà solo. –

Problemi correlati