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 la mappatura dei dati per WebSocket APIs in API Gateway
La mappatura dei dati consente di mappare i dati da una richiesta di instradamento a un'integrazione back-end.
Nota
La mappatura dei dati per WebSocket APIs non è supportata in. AWS Management ConsoleÈ necessario utilizzare AWS CLI AWS CloudFormation, o an SDK per configurare la mappatura dei dati.
Argomenti
Come mappare i dati di richiesta di instradamento ai parametri di richiesta di integrazione
I parametri della richiesta di integrazione possono essere mappati da tutti i parametri di richiesta di instradamento definiti, dal corpo della richiesta context o dalle variabili stage e dai valori statici.
La tabella seguente mostra le espressioni di mappatura dei dati delle richieste di integrazione. Nella tabella,
è il nome di un parametro di richiesta di percorso del tipo di parametro specificato. Deve corrispondere all'espressione regolare PARAM_NAME
'^[a-zA-Z0-9._$-]+$]'
. JSONPath_EXPRESSION
è un'JSONPathespressione per un JSON campo del corpo della richiesta.
Origine dati mappata | Espressione di mappatura |
---|---|
Stringa di query di richiesta (supportata solo per l'instradamento $connect ) |
route.request.querystring. |
Intestazione della richiesta (supportata solo per l'instradamento $connect ) |
route.request.header. |
Stringa di query della richiesta a più valori (supportata solo per l'instradamento $connect ) |
route.request.multivaluequerystring. |
Intestazione della richiesta a più valori (supportata solo per l'instradamento $connect ) |
route.request.multivalueheader. |
Corpo di richiesta | route.request.body. |
Variabili di fase | stageVariables. |
Variabili di contesto | context. che deve essere una delle variabili di contesto supportate. |
Valore statico | . La STATIC_VALUE è una stringa letterale e deve essere racchiusa tra virgolette singole. |
Esempi
I seguenti AWS CLI esempi configurano le mappature dei dati. Per un AWS CloudFormation modello di esempio, vedere. websocket-data-mapping.yaml
Mappa quello di un client connectionId a un'intestazione in una richiesta di integrazione
Il comando di esempio seguente associa un connectionId
di un client a un'intestazione connectionId
nella richiesta a un'integrazione back-end.
aws apigatewayv2 update-integration \ --integration-id abc123 \ --api-id a1b2c3d4 \ --request-parameters 'integration.request.header.connectionId'='context.connectionId'
Mappatura di un parametro di stringa di query a un'intestazione in una richiesta di integrazione
I comandi di esempio seguenti mappano un parametro stringa di query authToken
a un'intestazione authToken
nella richiesta di integrazione.
Innanzitutto, aggiungere il parametro della stringa di query authToken
ai parametri di richiesta dell'instradamento.
aws apigatewayv2 update-route --route-id 0abcdef \ --api-id a1b2c3d4 \ --request-parameters '{"route.request.querystring.authToken": {"Required": false}}'
Quindi, mappare il parametro della stringa di query all'intestazione authToken
nella richiesta di integrazione back-end.
aws apigatewayv2 update-integration \ --integration-id abc123 \ --api-id a1b2c3d4 \ --request-parameters 'integration.request.header.authToken'='route.request.querystring.authToken'
Se necessario, eliminare il parametro della stringa di query authToken
ai parametri di richiesta dell'instradamento.
aws apigatewayv2 delete-route-request-parameter \ --route-id 0abcdef \ --api-id a1b2c3d4 \ --request-parameter-key 'route.request.querystring.authToken'