Creación de funciones
La función se crea en dos etapas:
-
Crear el código de función como JavaScript. Puede utilizar el ejemplo predeterminado de la consola de CloudFront o escribir el suyo propio. Para obtener más información, consulte los temas siguientes:
-
Utilice CloudFront para crear la función e incluir el código. El código existe dentro de la función (no como referencia).
- Console
-
Para crear una función
-
Inicie sesión en la consola de CloudFront en https://console.aws.amazon.com/cloudfront/v4/home#/functions
y elija la página Funciones. -
Seleccione Creación de función.
-
Introduzca un nombre de función que sea único en la Cuenta de AWS, elija la versión de Java Script y, a continuación, elija Continuar. Aparece la página de detalles de la nueva función.
nota
Para utilizar pares clave-valor en la función, debe elegir tiempo de ejecución 2.0 de Java Script.
-
En la sección Código de función, seleccione la pestaña Compilación e introduzca el código de función. El código de ejemplo que se incluye en la pestaña Compilación ilustra la sintaxis básica del código de la función.
-
Elija Guardar cambios.
-
Si el código de la función utiliza pares clave-valor, debe asociar un almacén de clave-valor.
Puede asociar el almacén de clave-valor cuando crea en primer lugar la función. O bien, puede asociarlo más adelante, actualizando la función.
Para asociar un almacén clave-valor ahora, siga estos pasos:
-
Vaya a la sección Asociar KeyValueStore y elija Asociar KeyValueStore existente.
-
Seleccione el almacén de clave-valor que contiene los pares clave-valor de la función y, a continuación, elija Asociar KeyValueStore.
CloudFront asocia inmediatamente el almacén a la función. No necesita guardar la función.
-
-
- CLI
-
Si utiliza la CLI, normalmente crea primero el código de la función en un archivo y, a continuación, crea la función con la AWS CLI.
Para crear una función
-
Cree el código de la función en un archivo y guárdelo en un directorio al que se pueda conectar el equipo.
-
Ejecute el comando como se muestra en el ejemplo. En este ejemplo, se utiliza la notación
fileb://para transmitir el archivo. También incluye saltos de línea para que el comando sea más legible.aws cloudfront create-function \ --name MaxAge \ --function-config '{"Comment":"Max Age 2 years","Runtime":"cloudfront-js-2.0","KeyValueStoreAssociations":{"Quantity":1,"Items":[{"KeyValueStoreARN":"arn:aws:cloudfront::111122223333:key-value-store/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"}]}}' \ --function-code fileb://function-max-age-v1.jsNotas
-
Runtime: la versión de Java Script. Para utilizar pares clave-valor en la función, debe especificar la versión 2.0. -
KeyValueStoreAssociations: si la función usa pares clave-valor, puede asociar el almacén de clave-valor en la creación inicial de la función. O bien, puede asociarlo más adelante, utilizandoupdate-function. LaQuantitysiempre es1, porque cada función solo puede tener asociado un almacén de clave-valor.
Si el comando se ejecuta correctamente, verá un resultado parecido al siguiente.
ETag: ETVABCEXAMPLE FunctionSummary: FunctionConfig: Comment: Max Age 2 years Runtime: cloudfront-js-2.0 KeyValueStoreAssociations= \ {Quantity=1, \ Items=[{KeyValueStoreARN='arn:aws:cloudfront::111122223333:key-value-store/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111'}]} \ FunctionMetadata: CreatedTime: '2021-04-18T20:38:56.915000+00:00' FunctionARN: arn:aws:cloudfront::111122223333:function/MaxAge LastModifiedTime: '2023-11-19T20:38:56.915000+00:00' Stage: DEVELOPMENT Name: MaxAge Status: UNPUBLISHED Location: https://cloudfront.amazonaws.com/2020-05-31/function/arn:aws:cloudfront:::function/MaxAgeLa mayor parte de la información se repite desde la solicitud. CloudFront agrega el resto de información.
Notas
-
ETag: este valor cambia cada vez que se modifica el almacén de clave-valor. Utilice este valor y el nombre de la función para hacer referencia a la función en el futuro. Asegúrese de utilizar siempre laETagactual. -
FunctionARN: el ARN de la función CloudFront. -
111122223333: la Cuenta de AWS.
-
Stage: la fase de la función (LIVEoDEVELOPMENT). -
Status: el estado de la función (PUBLISHEDoUNPUBLISHED).
-
-
Después de crear la función, se agrega a la fase DEVELOPMENT. Le recomendamos que pruebe la función antes de publicarla. Tras publicar la función, la función cambia a la fase LIVE.