Métodos de ayuda generales - Amazon CloudFront

Métodos de ayuda generales

Esta página proporciona métodos de ayuda adicionales en CloudFront Functions. Para usar estos métodos, cree una función de CloudFront con tiempo de ejecución 2.0 de JavaScript.

import cf from 'cloudfront';

Para obtener más información, consulte Características del tiempo de ejecución 2.0 de JavaScript para CloudFront Functions.

edgeLocationMetadatos de

Este método requiere el uso del modulo cloudfront.

nota

Solo puede utilizar este método para las funciones de solicitud del espectador. Para las funciones de respuesta del espectador, este método está vacío.

Utilice este objeto de JavaScript para obtener el código del aeropuerto de ubicación periférica, la región de Caché periférica regional prevista o la dirección IP del servidor de CloudFront utilizada para gestionar la solicitud. Estos metadatos solo están disponibles cuando el espectador solicita desencadenar el evento.

cf.edgeLocation = { name: SEA serverIp: 1.2.3.4 region: us-west-2 }

El objeto cf.edgeLocation puede incluir lo siguiente:

name

El código IATA de tres letras de la ubicación periférica que gestionó la solicitud.

serverIp

Dirección IPv4 o IPv6 del servidor que gestionó la solicitud.

region

La caché periférica regional (REC) de CloudFront que se espera que utilice la solicitud en caso de falta de memoria caché. Este valor no se actualiza en caso de que el REC esperado no esté disponible y se utilice un REC de copia de seguridad para la solicitud. Esto no incluye la ubicación de Origin Shield que se utilice, excepto en los casos en que el REC principal y el Origin Shield estén en la misma ubicación.

nota

CloudFront Functions no se invoca por segunda vez cuando CloudFront está configurado para usar la conmutación por error de origen. Para obtener más información, consulte Optimización de alta disponibilidad con conmutación por error de origen de CloudFront.

rawQueryString()Método de

Este método no requiere el módulo cloudFront.

Utilice el método rawQueryString() para recuperar la cadena de consulta no analizada y no modificada como una cadena.

Solicitud

function handler(event) { var request = event.request; const qs = request.rawQueryString(); }

Respuesta

Devuelve la cadena de consulta completa de la solicitud entrante como un valor de cadena sin ? al principio.

  • Si no hay una cadena de consulta, pero ? está presente, la función devuelve una cadena vacía.

  • Si no hay una cadena de consulta y ? no está presente, la función devuelve undefined.

Caso 1: se devuelve la cadena de consulta completa (sin ? al principio)

URL de solicitud entrante: https://example.com/page?name=John&age=25&city=Boston

rawQueryString() devuelve: "name=John&age=25&city=Boston"

Caso 2: se devuelve una cadena vacía (cuando ? está presente pero sin parámetros)

URL de solicitud entrante: https://example.com/page?

rawQueryString() devuelve: ""

Caso 3: se devuelve undefined (sin cadena de consulta ni ?)

URL de solicitud entrante: https://example.com/page

rawQueryString() devuelve: undefined