

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# AWS::Serverless::WebFunction
<a name="sam-resource-webfunction"></a>

 Crea una función AWS Lambda web, que atiende las solicitudes HTTP a través de un punto final gestionado. A diferencia de una función de eventos Lambda, que se ejecuta en respuesta a invocaciones y eventos, una función web ejecuta su servidor web y recibe solicitudes HTTP directamente. A partir de una sola`AWS::Serverless::WebFunction`, AWS SAM genera la función web, una revisión inmutable que contiene el código y la configuración, y un punto final que dirige el tráfico a una o más revisiones. 

**nota**  
Al realizar la implementación en AWS CloudFormation, AWS SAM transforma sus AWS SAM recursos en CloudFormation recursos. Para obtener más información, consulte [Generado CloudFormation recursos para AWS SAM](sam-specification-generated-resources.md). 

**importante**  
El código de la función debe ejecutar un servidor HTTP que escuche el host y el puerto de la variable de `AWS_LAMBDA_HTTP_ENDPOINT` entorno. El tiempo de ejecución no está configurado`PORT`. De forma predeterminada, el tiempo de ejecución se ejecuta `index.js` en la raíz del paquete de despliegue. Se utiliza [EntryPoint](#sam-webfunction-entrypoint)para ejecutar un archivo diferente.

**importante**  
El depósito de Amazon S3 que contiene el paquete de implementación debe cumplir los siguientes requisitos:  
El control de versiones está activado.
Una política de bucket otorga `lambda.amazonaws.com` los `s3:GetObjectVersion` permisos `s3:GetObject` y. Le recomendamos que defina la política con una `ArnLike` condición `aws:SourceArn` que coincida con las revisiones de la función, por ejemplo`arn:aws:lambda:{{us-east-1}}:{{111122223333}}:web-function/{{my-function}}/revision/*`.
Si el objeto está cifrado con SSE-KMS, utiliza una clave gestionada por el cliente cuya política de claves permite `lambda.amazonaws.com` realizar llamadas`kms:Decrypt`. La clave AWS gestionada de Amazon S3 (`aws/s3`) no es compatible porque no se puede cambiar su política de claves.
Para ver un ejemplo de política de bucket, consulte [Política de bucket para Lambda](https://docs.aws.amazon.com/lambda/latest/dg/web-functions-code-s3.html#web-functions-code-s3-bucket-policy) en la Guía para *AWS Lambda desarrolladores*.  
`CodeUri`debe hacer referencia a un objeto en Amazon S3. Los `sam package` comandos `sam build` y no admiten las rutas locales de este recurso.

## Sintaxis
<a name="sam-resource-webfunction-syntax"></a>

Para declarar esta entidad en tu plantilla AWS Serverless Application Model (AWS SAM), usa la siguiente sintaxis.

### YAML
<a name="sam-resource-webfunction-syntax.yaml"></a>

```
Type: AWS::Serverless::WebFunction
Properties:
  [AuthType](#sam-webfunction-authtype): {{String}}
  [AutoDeploymentMode](#sam-webfunction-autodeploymentmode): {{String}}
  [CodeUri](#sam-webfunction-codeuri): {{String | CodeUri}}
  [EgressNetworkConnectorArn](#sam-webfunction-egressnetworkconnectorarn): {{String}}
  [EndpointDescription](#sam-webfunction-endpointdescription): {{String}}
  [EndpointName](#sam-webfunction-endpointname): {{String}}
  [EndpointType](#sam-webfunction-endpointtype): {{String}}
  [EntryPoint](#sam-webfunction-entrypoint): {{String}}
  [EnvironmentVariables](#sam-webfunction-environmentvariables): {{Map}}
  [ExecutionRoleArn](#sam-webfunction-executionrolearn): {{String}}
  [FunctionName](#sam-webfunction-functionname): {{String}}
  [InlineCode](#sam-webfunction-inlinecode): {{String}}
  [KmsKeyArn](#sam-webfunction-kmskeyarn): {{String}}
  [LoggingConfig](#sam-webfunction-loggingconfig): {{Map}}
  [MaxConcurrencyPerEnvironment](#sam-webfunction-maxconcurrencyperenvironment): {{Integer}}
  [ReplicaRegions](#sam-webfunction-replicaregions): {{List | ReplicaRegions}}
  [RevisionDescription](#sam-webfunction-revisiondescription): {{String}}
  [RevisionWeights](#sam-webfunction-revisionweights): {{RevisionWeights}}
  [Runtime](#sam-webfunction-runtime): {{String}}
  [ScalingConfig](#sam-webfunction-scalingconfig): {{Map}}
  [Tags](#sam-webfunction-tags): {{Map}}
  [ThrottleConfig](#sam-webfunction-throttleconfig): {{Map}}
  [Timeout](#sam-webfunction-timeout): {{Integer}}
```

## Propiedades
<a name="sam-resource-webfunction-properties"></a>

 `AuthType`   <a name="sam-webfunction-authtype"></a>
Cómo autoriza el punto final las solicitudes.  
+ `IamAuth`: Lambda autoriza las solicitudes con Signature Version 4 e IAM. Las personas que llaman necesitan el `lambda:InvokeWebFunctionEndpoint` permiso, que se otorga mediante una política basada en los recursos de la función.
+ `ApplicationManaged`: el punto final es público. Su función debe autorizar cada solicitud por sí misma.
*Valores válidos*: `IamAuth`, `ApplicationManaged`  
*Tipo*: cadena  
*Obligatorio*: sí  
*CloudFormation compatibilidad*: esta propiedad se pasa directamente a la `[AuthType](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-authtype)` propiedad de un `AWS::Lambda::WebFunctionEndpoint` recurso. 

 `AutoDeploymentMode`   <a name="sam-webfunction-autodeploymentmode"></a>
Cómo el punto final enruta el tráfico entre las revisiones.  
+ `LatestRevision`: envía el 100% del tráfico a la revisión que crea esta implementación.
+ `Disabled`: enruta el tráfico según [RevisionWeights](#sam-webfunction-revisionweights).
Los valores que se pueden utilizar y si `RevisionWeights` son obligatorios dependen de [EndpointType](#sam-webfunction-endpointtype):  
+ `HomeRegion`: utilice cualquiera de los dos valores. Con`Disabled`, `RevisionWeights` es obligatorio.
+ `MultiRegion`o`PerRegion`: usar`Disabled`. Si lo omite`RevisionWeights`, el punto final redirige el 100% del tráfico a la revisión creada en la misma pila, de modo que puede crear el punto final en una sola implementación. El tráfico no pasa a las revisiones que crean las implementaciones posteriores.
El valor debe resolverse al AWS SAM transformar la plantilla. Se admite el valor `Ref` A a un parámetro. No se admiten otras funciones intrínsecas.  
*Valores válidos*: `LatestRevision`, `Disabled`  
*Tipo:* cadena  
*Obligatorio*: no  
*Valor predeterminado*: `LatestRevision`  
*CloudFormation compatibilidad*: esta propiedad es exclusiva de AWS SAM y no tiene un CloudFormation equivalente.

 `CodeUri`   <a name="sam-webfunction-codeuri"></a>
La ubicación en Amazon S3 del paquete de implementación. Especifique un `s3://{{bucket}}/{{key}}` URI o un objeto con `Bucket``Key`, y `Version` claves opcionales. Para conocer los requisitos del bucket, consulta la nota que aparece en la parte superior de esta página.  
*Tipo*: Cadena \| [CodeUri](sam-property-webfunction-codeuri.md)  
*Obligatorio*: sí  
*CloudFormation compatibilidad*: esta propiedad es similar a la `[BuildConfig.CodeConfig.S3Object](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-s3object.html)` propiedad de un `AWS::Lambda::WebFunctionRevision` recurso. AWS SAM convierte un `s3://` URI en `Bucket``Key`, y`VersionId`. 

 `EgressNetworkConnectorArn`   <a name="sam-webfunction-egressnetworkconnectorarn"></a>
El ARN compatible con la versión de un conector de red que enruta el tráfico saliente de la función a través de la VPC. El ARN debe terminar en un número de versión, por ejemplo. `arn:aws:lambda:us-east-1:123456789012:network-connector:my-connector:1` Para usar la última versión de un conector en la misma plantilla, especifique`!GetAtt {{MyConnector}}.LatestVersionArn`. Los conectores [ComputeTypes](sam-resource-networkconnector.md#sam-networkconnector-computetypes)deben serlo`WebFunction`.  
Si especifica una cadena literal, AWS SAM comprueba que se trate de un ARN de conector de red compatible con la versión. El servicio transmite y valida las funciones intrínsecas. Al cambiar este valor, se crea una nueva revisión.  
*Tipo:* cadena  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se pasa directamente a la `[ServiceConfig.EgressNetworkConnectorArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html)` propiedad de un `AWS::Lambda::WebFunctionRevision` recurso. 

 `EndpointDescription`   <a name="sam-webfunction-endpointdescription"></a>
Una descripción del punto final.  
*Tipo:* cadena  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se pasa directamente a la `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-description)` propiedad de un `AWS::Lambda::WebFunctionEndpoint` recurso. 

 `EndpointName`   <a name="sam-webfunction-endpointname"></a>
El nombre del punto de enlace. Al cambiar el nombre, se reemplaza el punto final. El cambio `EndpointType` también reemplaza el punto final, así que `EndpointName` cámbielo al mismo tiempo. CloudFormation no se puede reemplazar un recurso con un nombre personalizado sin un nombre nuevo.  
*Tipo:* cadena  
*Obligatorio*: no  
*Valor predeterminado*: `prod`  
*CloudFormation compatibilidad*: esta propiedad se pasa directamente a la `[EndpointName](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-endpointname)` propiedad de un `AWS::Lambda::WebFunctionEndpoint` recurso. 

 `EndpointType`   <a name="sam-webfunction-endpointtype"></a>
Dónde el punto final atiende el tráfico.  
+ `HomeRegion`: sirve desde la región de la pila.
+ `MultiRegion`: replica la función en las regiones [ReplicaRegions](#sam-webfunction-replicaregions)y dirige cada solicitud a la región más cercana.
+ `PerRegion`: muestra un punto final independiente en cada región de réplica.
`MultiRegion`y `PerRegion` requieren`AutoDeploymentMode: Disabled`.  
*Valores válidos*: `HomeRegion`, `MultiRegion`, `PerRegion`  
*Tipo:* cadena  
*Obligatorio*: no  
*Valor predeterminado*: `HomeRegion`  
*CloudFormation compatibilidad*: esta propiedad se pasa directamente a la `[EndpointType](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-endpointtype)` propiedad de un `AWS::Lambda::WebFunctionEndpoint` recurso. 

 `EntryPoint`   <a name="sam-webfunction-entrypoint"></a>
El archivo que ejecuta el motor de ejecución, en relación con la raíz del paquete de despliegue. AWS SAM lo pasa al motor de ejecución de la variable de `AWS_LAMBDA_NODEJS_ENTRYPOINT` entorno reservada.  
No puede usar esta propiedad cuando `EnvironmentVariables` es una función intrínseca.  
*Tipo:* cadena  
*Obligatorio*: no  
*Valor predeterminado*: `index.js`  
*CloudFormation compatibilidad*: esta propiedad es exclusiva de AWS SAM y no tiene un CloudFormation equivalente.

 `EnvironmentVariables`   <a name="sam-webfunction-environmentvariables"></a>
Key-value pares para establecerlos como variables de entorno para la revisión.  
+ Las claves deben empezar por una letra y contener solo letras, números y guiones bajos.
+ Los valores no deben estar vacíos y tener un máximo de 4.096 caracteres.
+ AWS SAM convierte valores numéricos y booleanos en cadenas.
*Tipo*: mapa  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se pasa directamente a la `[ServiceConfig.EnvironmentVariables](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-environmentvariables)` propiedad de un `AWS::Lambda::WebFunctionRevision` recurso. 

 `ExecutionRoleArn`   <a name="sam-webfunction-executionrolearn"></a>
El ARN de la función de IAM que asume la función cuando se ejecuta. Si no especificas un rol, AWS SAM crea uno con la política `AWSLambdaBasicExecutionRole` administrada y un identificador lógico de. `{{<resource-logical-id>}}Role`  
*Tipo:* cadena  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se transfiere directamente a la `[ServiceConfig.ExecutionRoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-executionrolearn)` propiedad de un `AWS::Lambda::WebFunctionRevision` recurso. 

 `FunctionName`   <a name="sam-webfunction-functionname"></a>
El nombre de la función. Los nombres de las funciones deben ser únicos en una cuenta en todas las regiones. Si no especificas un nombre, AWS SAM genera uno a partir del identificador lógico y el identificador de pila, con un máximo de 64 caracteres. Al cambiar el nombre, se sustituyen la función, su revisión y su punto final.  
*Tipo:* cadena  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se transfiere directamente a la `[FunctionName](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunction.html#cfn-lambda-webfunction-functionname)` propiedad de los `AWS::Lambda::WebFunctionEndpoint` recursos `AWS::Lambda::WebFunction``AWS::Lambda::WebFunctionRevision`, y. 

 `InlineCode`   <a name="sam-webfunction-inlinecode"></a>
No se admite para `AWS::Serverless::WebFunction`. Utilice [CodeUri](#sam-webfunction-codeuri).  
*Tipo:* cadena  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad es exclusiva AWS SAM y no tiene un CloudFormation equivalente.

 `KmsKeyArn`   <a name="sam-webfunction-kmskeyarn"></a>
El ARN de la AWS KMS clave utilizada para cifrar las variables de entorno de la revisión.  
*Tipo:* cadena  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se pasa directamente a la `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionrevision.html#cfn-lambda-webfunctionrevision-kmskeyarn)` propiedad de un `AWS::Lambda::WebFunctionRevision` recurso. 

 `LoggingConfig`   <a name="sam-webfunction-loggingconfig"></a>
La configuración de registro de la revisión, como el grupo de registros y los niveles de registro.  
*Tipo*: mapa  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se transfiere directamente a la `[ServiceConfig.TelemetryConfig.LoggingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-telemetryconfig.html#cfn-lambda-webfunctionrevision-telemetryconfig-loggingconfig)` propiedad de un `AWS::Lambda::WebFunctionRevision` recurso. 

 `MaxConcurrencyPerEnvironment`   <a name="sam-webfunction-maxconcurrencyperenvironment"></a>
El número máximo de solicitudes simultáneas que gestiona cada entorno de ejecución.  
*Tipo*: entero  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se pasa directamente a la `[ServiceConfig.MaxConcurrencyPerEnvironment](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-maxconcurrencyperenvironment)` propiedad de un `AWS::Lambda::WebFunctionRevision` recurso. 

 `ReplicaRegions`   <a name="sam-webfunction-replicaregions"></a>
Las regiones en las que se va a replicar la función. Utilice esta propiedad con `MultiRegion` `PerRegion` puntos finales. Especifique una lista de códigos de región y grupos de regiones, o un objeto con `IncludeRegions` una opción`ExcludeRegions`.  
*Tipo*: Lista \| [ReplicaRegions](sam-property-webfunction-replicaregions.md)  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad es similar a la `[Regions](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-regions)` propiedad de un `AWS::Lambda::WebFunctionEndpoint` recurso. AWS SAM expande los grupos de regiones y se aplica `ExcludeRegions` para generar la lista de regiones. 

 `RevisionDescription`   <a name="sam-webfunction-revisiondescription"></a>
Una descripción de la revisión que crea este despliegue.  
*Tipo:* cadena  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se transfiere directamente a la `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionrevision.html#cfn-lambda-webfunctionrevision-description)` propiedad de un `AWS::Lambda::WebFunctionRevision` recurso. 

 `RevisionWeights`   <a name="sam-webfunction-revisionweights"></a>
Un mapa de los identificadores de revisión y los pesos de tráfico. Utilice esta propiedad cuando `AutoDeploymentMode` esté`Disabled`. Especifique hasta dos revisiones. Cada peso es un número entero comprendido entre 1 y 100 y los pesos deben sumar 100.  
*Tipo:* [RevisionWeights](sam-property-webfunction-revisionweights.md)  
*Obligatorio*: condicional. Se requiere cuando `AutoDeploymentMode` es `Disabled` y `EndpointType` es`HomeRegion`.  
*CloudFormation compatibilidad*: esta propiedad es similar a la `[RevisionWeights](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-revisionweights)` propiedad de un `AWS::Lambda::WebFunctionEndpoint` recurso. AWS SAM convierte el mapa en una lista de `Weight` objetos `RevisionId` y. 

 `Runtime`   <a name="sam-webfunction-runtime"></a>
El tiempo de ejecución de la función, por ejemplo`nodejs24.x`.  
*Tipo:* cadena  
*Obligatorio*: sí  
*CloudFormation compatibilidad*: esta propiedad se pasa directamente a la `[BuildConfig.RuntimeConfig.Runtime](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-runtimeconfig.html#cfn-lambda-webfunctionrevision-runtimeconfig-runtime)` propiedad de un `AWS::Lambda::WebFunctionRevision` recurso. 

 `ScalingConfig`   <a name="sam-webfunction-scalingconfig"></a>
La configuración de escalado del punto final, como el número máximo de entornos de ejecución.  
*Tipo*: mapa  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se transfiere directamente a la `[ScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-scalingconfig)` propiedad de un `AWS::Lambda::WebFunctionEndpoint` recurso. 

 `Tags`   <a name="sam-webfunction-tags"></a>
Un mapa de pares clave-valor que especifica las etiquetas agregadas a la función y al rol de ejecución que se AWS SAM genera.  
*Tipo*: mapa  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad es similar a la `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunction.html#cfn-lambda-webfunction-tags)` propiedad de un `AWS::Lambda::WebFunction` recurso. La `Tags` propiedad en se AWS SAM compone de pares clave-valor (mientras que en CloudFormation esta propiedad se compone de una lista de `Tag` objetos). Además, agrega AWS SAM automáticamente una `lambda:createdBy:SAM` etiqueta a la función y al rol predeterminado que se genera para ella. 

 `ThrottleConfig`   <a name="sam-webfunction-throttleconfig"></a>
La configuración de regulación del punto final, como la tasa máxima de solicitudes.  
*Tipo*: mapa  
*Obligatorio*: no  
*CloudFormation compatibilidad*: esta propiedad se transfiere directamente a la `[ThrottleConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-throttleconfig)` propiedad de un `AWS::Lambda::WebFunctionEndpoint` recurso. 

 `Timeout`   <a name="sam-webfunction-timeout"></a>
El tiempo máximo, en segundos, que puede ejecutarse la función por solicitud. Los valores válidos oscilan entre 3 y 900.  
*Tipo*: entero  
*Obligatorio*: no  
*Valor predeterminado*: `30`  
*CloudFormation compatibilidad*: esta propiedad se pasa directamente a la `[ServiceConfig.TimeoutSeconds](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-timeoutseconds)` propiedad de un `AWS::Lambda::WebFunctionRevision` recurso. 

## valores devueltos
<a name="sam-resource-webfunction-return-values"></a>

### Ref.
<a name="sam-resource-webfunction-return-values-ref"></a>

Cuando se proporciona el ID lógico de este recurso a la función `Ref` intrínseca, devuelve el ARN de la función web. Cuando necesite el nombre de la función, utilice el valor de `FunctionName` en su lugar.

Para obtener más información sobre el uso de la función `Ref`, consulta [`Ref`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) en la *Guía del usuario de AWS CloudFormation *.

### Fn: GetAtt
<a name="sam-resource-webfunction-return-values-fn--getatt"></a>

`Fn::GetAtt` devuelve un valor para un atributo especificado de este tipo. A continuación se indican los atributos disponibles y los valores devueltos de muestra.

Para obtener más información acerca de cómo usar `Fn::GetAtt`, consulta [`Fn::GetAtt`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html) en la *Guía del usuario de AWS CloudFormation *.

`FunctionArn`  <a name="sam-webfunction-getatt-functionarn"></a>
El nombre del recurso de Amazon (ARN) de la función web.

`State`  <a name="sam-webfunction-getatt-state"></a>
El estado actual de la función web.

`StateReason`  <a name="sam-webfunction-getatt-statereason"></a>
El motivo del estado actual de la función web.

`CreatedAt`  <a name="sam-webfunction-getatt-createdat"></a>
La hora en que se creó la función web.

`UpdatedAt`  <a name="sam-webfunction-getatt-updatedat"></a>
La hora en que se actualizó la función web por última vez.

Para hacer referencia a la revisión o al punto final que se AWS SAM genera, utilice sus identificadores lógicos `{{<resource-logical-id>}}Revision` y`{{<resource-logical-id>}}Endpoint`. Por ejemplo, `!GetAtt MyWebFunctionEndpoint.DomainName` devuelve el nombre de dominio del punto final de una función web con el ID lógico`MyWebFunction`. Para obtener más información, consulte [CloudFormation recursos generados cuando AWS::Serverless::WebFunction se especifica](sam-specification-generated-resources-webfunction.md).

## Ejemplos
<a name="sam-resource-webfunction-examples"></a>

### Función web básica
<a name="sam-resource-webfunction-example-basic"></a>

El siguiente ejemplo crea una función web con un IAM-authorized punto final en la región de la pila. AWS SAM genera la función de ejecución y el punto final enruta todo el tráfico a la revisión que crea esta implementación.

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31

Resources:
  MyWebFunction:
    Type: AWS::Serverless::WebFunction
    Properties:
      Runtime: nodejs24.x
      AuthType: IamAuth
      CodeUri:
        Bucket: amzn-s3-demo-bucket
        Key: webfn.zip
        Version: {{object-version-id}}
      Timeout: 30

Outputs:
  EndpointUrl:
    Value: !Sub https://${MyWebFunctionEndpoint.DomainName}
```

### Divida el tráfico entre dos revisiones
<a name="sam-resource-webfunction-example-canary"></a>

El siguiente ejemplo deshabilita la implementación automática y envía el 90% del tráfico a una revisión existente y el 10% a otra. Ambas revisiones deben existir ya.

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31

Resources:
  MyWebFunction:
    Type: AWS::Serverless::WebFunction
    Properties:
      Runtime: nodejs24.x
      AuthType: IamAuth
      CodeUri: s3://amzn-s3-demo-bucket/webfn-v2.zip
      AutoDeploymentMode: Disabled
      RevisionWeights:
        rev-abc123: 90
        rev-def456: 10
```

### Multi-Region Función web
<a name="sam-resource-webfunction-example-multiregion"></a>

En el siguiente ejemplo, se replica la función en las regiones de EE. UU., excepto en las regiones de EE. UU. `us-west-1` y se enruta cada solicitud a la región más cercana. Como `RevisionWeights` se omite, el punto final enruta todo el tráfico a la revisión creada en esta pila.

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31

Resources:
  MyWebFunction:
    Type: AWS::Serverless::WebFunction
    Properties:
      Runtime: nodejs24.x
      AuthType: IamAuth
      CodeUri:
        Bucket: amzn-s3-demo-bucket
        Key: webfn.zip
        Version: {{object-version-id}}
      EndpointName: prodmr
      EndpointType: MultiRegion
      AutoDeploymentMode: Disabled
      ReplicaRegions:
        IncludeRegions:
          - US
        ExcludeRegions:
          - us-west-1
```

### Función web con salida de VPC
<a name="sam-resource-webfunction-example-vpc-egress"></a>

El siguiente ejemplo crea un conector de red para Web Functions y enruta el tráfico saliente de la función a través de las subredes y los grupos de seguridad del conector.

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31

Resources:
  MyConnector:
    Type: AWS::Serverless::NetworkConnector
    Properties:
      ComputeTypes:
        - WebFunction
      VpcConfig:
        SubnetIds:
          - subnet-0abc123def4567890
          - subnet-0def456abc7890123
        SecurityGroupIds:
          - sg-0abc1234abcde0001
        NetworkProtocol: IPv4

  MyWebFunction:
    Type: AWS::Serverless::WebFunction
    Properties:
      Runtime: nodejs24.x
      AuthType: IamAuth
      CodeUri:
        Bucket: amzn-s3-demo-bucket
        Key: webfn.zip
        Version: {{object-version-id}}
      EgressNetworkConnectorArn: !GetAtt MyConnector.LatestVersionArn
```