Imposta una risposta di WebSocket API integrazione in 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à.

Imposta una risposta di WebSocket API integrazione in API Gateway

La sezione seguente fornisce una breve panoramica delle risposte di integrazione per WebSocket API e su come impostare una risposta di integrazione per a WebSocket API.

Panoramica delle risposte di integrazione

APILa risposta di integrazione di Gateway è un modo per modellare e manipolare la risposta di un servizio di backend. Esistono alcune differenze nella configurazione di una risposta REST API rispetto a quella di WebSocket API integrazione, ma concettualmente il comportamento è lo stesso.

WebSocket i percorsi possono essere configurati per la comunicazione bidirezionale o unidirezionale.

  • Quando un percorso è configurato per la comunicazione bidirezionale, una risposta di integrazione consente di configurare le trasformazioni sul payload del messaggio restituito, in modo analogo alle risposte di integrazione per. REST APIs

  • Se una route è configurata per la comunicazione unidirezionale, indipendentemente dalla configurazione della risposta di integrazione, non verrà restituita alcuna risposta sul WebSocket canale dopo l'elaborazione del messaggio.

APIIl gateway non passerà la risposta del backend alla risposta del percorso, a meno che non si imposti una risposta di routing. Per informazioni sull'impostazione di una risposta di instradamento, consultare Imposta le risposte di routing per WebSocket APIs in API Gateway.

Risposte di integrazione per la comunicazione bidirezionale

Le integrazioni possono essere divise in integrazioni proxy e integrazioni non proxy.

Importante

Per le integrazioni proxy, API Gateway trasmette automaticamente l'output del backend al chiamante come payload completo. Non esiste alcuna risposta di integrazione.

Per integrazioni non proxy, è necessario configurare almeno una risposta di integrazione:

  • Idealmente, una delle risposte di integrazione deve agire come un metodo catch-all quando non è possibile effettuare una scelta esplicita. Questo caso predefinito viene rappresentato impostando una chiave di risposta di integrazione di $default.

  • In tutti gli altri casi, la chiave di risposta di integrazione funziona come un'espressione regolare. Il formato adottato è "/expression/".

Per le integrazioni non proxy: HTTP

  • APIGateway tenterà di corrispondere al codice di HTTP stato della risposta del backend. In questo caso, la chiave di risposta di integrazione funzionerà come un'espressione regolare. Se non è possibile trovare una corrispondenza, viene scelta $default come risposta di integrazione.

  • L'espressione di selezione del modello, come descritto in precedenza, funziona in modo identico. Ad esempio:

    • /2\d\d/: ricevi e trasforma risposte andate a buon fine

    • /4\d\d/: ricevi e trasforma errori di richiesta non valida

    • $default: ricevi e trasforma tutte le risposte impreviste

Per ulteriori informazioni sulle espressioni di selezione del modello, consultare Espressioni di selezione del modello.

Imposta una risposta di integrazione utilizzando la console API Gateway

Per impostare una risposta di integrazione del percorso per un WebSocket API utilizzo della console API Gateway:

  1. Accedere alla console API Gateway all'indirizzo https://console.aws.amazon.com/apigateway.

  2. Scegli il tuo WebSocket API e scegli il tuo percorso.

  3. Scegli la scheda Richiesta di integrazione, quindi seleziona Crea risposta di integrazione nella sezione Impostazioni della risposta di integrazione.

  4. Per Chiave della risposta inserisci un valore che verrà individuato nella chiave della risposta del messaggio in uscita dopo aver valutato l'espressione di selezione di risposta. Ad esempio, puoi inserire /4\d\d/ per ricevere e trasformare gli errori di richiesta non valida o $default per ricevere e trasformare tutte le risposte che corrispondono all'espressione di selezione del modello.

  5. Per Espressione di selezione del modello immetti un'espressione di selezione per valutare il messaggio in uscita.

  6. Scegli Crea risposta.

  7. È inoltre possibile definire un modello di mappatura per configurare le trasformazioni del payload dei messaggi restituiti. Scegli Crea modello.

  8. Immettere un nome per la chiave. Se è stata scelta l'espressione di selezione del modello predefinita, immettere\$default.

  9. Per Modello della risposta immetti il modello di mappatura nell'editor di codice.

  10. Scegli Crea modello.

  11. Scegli Deploy API per implementare il tuo. API

Usa il seguente comando wscat per connetterti al tuo. API Per ulteriori informazioni su wscat, consulta Utilizzalo wscat per connetterti a un' WebSocket API e inviarle messaggi.

wscat -c wss://api-id.execute-api.us-east-2.amazonaws.com/test

Quando viene richiamato l'instradamento, dovrebbe venire restituito il payload del messaggio restituito.

Imposta una risposta di integrazione utilizzando il AWS CLI

Per impostare una risposta di integrazione per un WebSocket API utilizzando il comando AWS CLI chiama il create-integration-responsecomando. Il CLI comando seguente mostra un esempio di creazione di una risposta di $default integrazione:

aws apigatewayv2 create-integration-response \ --api-id vaz7da96z6 \ --integration-id a1b2c3 \ --integration-response-key '$default'