Referencia de la plantilla de asignación de la API de WebSocket para API Gateway
En esta sección se resume el conjunto de variables compatibles actualmente con las API de WebSocket en API Gateway.
Parámetro | Descripción |
---|---|
$context.connectionId |
Identificador único para la conexión que se puede utilizar para realizar una devolución de llamada al cliente. |
$context.connectedAt |
Hora de la conexión en formato de tiempo Unix |
$context.domainName |
Nombre de dominio para la API de WebSocket. Se puede utilizar para realizar una devolución de llamada al cliente (en lugar de un valor de código rígido). |
$context.eventType |
El tipo de evento: |
$context.messageId |
Un ID único del lado del servidor para un mensaje. Solo está disponible si |
$context.routeKey |
La clave de ruta seleccionada. |
$context.requestId |
Igual que |
$context.extendedRequestId |
Un ID generado de forma automática para la llamada a la API, que contiene más información útil para la depuración o la resolución de problemas. |
$context.apiId |
El identificador que API Gateway asigna a su API. |
$context.authorizer.principalId |
La identificación de usuario principal asociada con el token enviado por el cliente y devuelto de una función de Lambda del autorizador de Lambda de API Gateway (que anteriormente se denominaba “autorizador personalizado”). |
$context.authorizer. |
El valor en forma de cadena del par clave-valor especificado de la asignación
la llamada a |
$context.error.messageString |
El valor entrecomillado de $context.error.message , es decir, "$context.error.message" . |
$context.error.validationErrorString |
Una cadena que contiene un mensaje de error de validación detallado. |
$context.identity.accountId |
El ID de cuenta de AWS asociado con la solicitud. |
$context.identity.apiKey |
Clave del propietario de API asociada a la solicitud de API habilitada para claves. |
$context.identity.apiKeyId |
ID de clave de API asociado a la solicitud de API habilitada para claves |
$context.identity.caller |
El identificador principal del intermediario que realiza la solicitud. |
$context.identity.cognitoAuthenticationProvider |
Una lista separada por comas de todos los proveedores de autenticación de Amazon Cognito utilizados por el intermediario que realiza la solicitud. Solo está disponible si la solicitud se firmó con las credenciales de Amazon Cognito. Por ejemplo, para una identidad de un grupo de usuarios de Amazon Cognito, Consulte Uso de las identidades federadas en la Guía para desarrolladores de Amazon Cognito para obtener información sobre los proveedores de autenticación de Amazon Cognito disponibles. |
$context.identity.cognitoAuthenticationType |
El tipo de autenticación de Amazon Cognito del intermediario que realiza la solicitud. Solo está disponible si la solicitud se firmó con las credenciales de Amazon Cognito. Los valores posibles incluyen |
$context.identity.cognitoIdentityId |
El ID de identidad de Amazon Cognito del intermediario que realiza la solicitud. Solo está disponible si la solicitud se firmó con las credenciales de Amazon Cognito. |
$context.identity.cognitoIdentityPoolId |
El ID del grupo de identidades de Amazon Cognito del intermediario que realiza la solicitud. Solo está disponible si la solicitud se firmó con las credenciales de Amazon Cognito. |
$context.identity.sourceIp |
La dirección IP de origen de la conexión TCP inmediata que realiza la solicitud al punto de enlace de API Gateway. |
$context.identity.user |
El identificador principal del usuario que realiza la solicitud. |
$context.identity.userAgent |
El agente de usuario del intermediario de la API. |
$context.identity.userArn |
El Nombre de recurso de Amazon (ARN) del usuario identificado después de la autenticación. |
$context.requestTime |
Hora de la solicitud en formato CLFdd/MMM/yyyy:HH:mm:ss
+-hhmm ). |
$context.requestTimeEpoch |
Hora de la solicitud en formato Epoch |
$context.stage |
La etapa de implementación de la llamada a la API (por ejemplo, Beta o Prod). |
$context.status |
Estado de la respuesta. |
$input.body |
Devuelve la carga bruta como una cadena. |
$input.json(x) |
Esta función evalúa una expresión JSONPath y devuelve los resultados como una cadena JSON. Por ejemplo, Para obtener más información acerca de JSONPath, consulte JSONPath |
$input.path(x) |
Toma una cadena de expresión JSONPath ( Por ejemplo, si la expresión
Para obtener más información acerca de JSONPath, consulte JSONPath |
$stageVariables. |
|
$stageVariables[' |
|
${stageVariables[' |
|
$util.escapeJavaScript() |
Aplica caracteres de escape a los caracteres de una cadena usando reglas de cadena de JavaScript. notaEsta función convertirá todas las comillas simples (
|
$util.parseJson() |
Toma un elemento JSON en forma de cadena y devuelve una representación del resultado en forma de objeto. Puede utilizar el resultado de esta función para tener acceso y manipular los elementos de la carga de forma nativa en Apache Velocity Template Language (VTL). Por ejemplo, si tiene la siguiente carga:
y usa la siguiente plantilla de asignación
Obtendrá el siguiente resultado:
|
$util.urlEncode() |
Convierte una cadena en formato "application/x-www-form-urlencoded". |
$util.urlDecode() |
Descodifica una cadena "application/x-www-form-urlencoded". |
$util.base64Encode() |
Codifica los datos en una cadena codificada en base64. |
$util.base64Decode() |
Descodifica los datos de una cadena codificada en base64. |