

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à.

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

 Crea una funzione AWS Lambda Web, che serve le richieste HTTP tramite un endpoint gestito. A differenza di una funzione evento Lambda, che viene eseguita in risposta a chiamate ed eventi, una funzione Web esegue il server Web e riceve direttamente le richieste HTTP. Da una singola`AWS::Serverless::WebFunction`, AWS SAM genera la funzione Web, una revisione immutabile che contiene il codice e la configurazione e un endpoint che indirizza il traffico verso una o più revisioni. 

**Nota**  
Quando lo distribuisci su, trasforma le tue risorse in AWS CloudFormation risorse AWS SAM . AWS SAM CloudFormation Per ulteriori informazioni, consulta [Generato CloudFormation risorse per AWS SAM](sam-specification-generated-resources.md). 

**Importante**  
Il codice della funzione deve eseguire un server HTTP che ascolti sull'host e sulla porta nella `AWS_LAMBDA_HTTP_ENDPOINT` variabile di ambiente. Il runtime non è impostato`PORT`. Per impostazione predefinita, il runtime viene eseguito `index.js` nella radice del pacchetto di distribuzione. [EntryPoint](#sam-webfunction-entrypoint)Da utilizzare per eseguire un file diverso.

**Importante**  
Il bucket Amazon S3 che contiene il pacchetto di distribuzione deve soddisfare i seguenti requisiti:  
Il controllo delle versioni è abilitato.
Una policy bucket concede `lambda.amazonaws.com` le autorizzazioni and. `s3:GetObject` `s3:GetObjectVersion` Ti consigliamo, ad esempio, di definire l'ambito della policy con una `ArnLike` condizione `aws:SourceArn` che corrisponda alle revisioni della funzione. `arn:aws:lambda:{{us-east-1}}:{{111122223333}}:web-function/{{my-function}}/revision/*`
Se l'oggetto è crittografato con SSE-KMS, utilizza una chiave gestita dal cliente la cui politica di chiave consente di `lambda.amazonaws.com` effettuare chiamate`kms:Decrypt`. La chiave AWS gestita per Amazon S3 (`aws/s3`) non è supportata, perché non è possibile modificarne la politica chiave.
*Per un esempio di bucket policy, consulta [Bucket policy for Lambda](https://docs.aws.amazon.com/lambda/latest/dg/web-functions-code-s3.html#web-functions-code-s3-bucket-policy) nella Developer Guide.AWS Lambda *  
`CodeUri`deve fare riferimento a un oggetto in Amazon S3. I `sam package` comandi `sam build` and non supportano i percorsi locali per questa risorsa.

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

Per dichiarare questa entità nel tuo modello AWS Serverless Application Model (AWS SAM), usa la seguente sintassi.

### 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}}
```

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

 `AuthType`   <a name="sam-webfunction-authtype"></a>
In che modo l'endpoint autorizza le richieste.  
+ `IamAuth`: Lambda autorizza le richieste con Signature Version 4 e IAM. I chiamanti necessitano dell'`lambda:InvokeWebFunctionEndpoint`autorizzazione, concessa tramite una politica basata sulle risorse sulla funzione.
+ `ApplicationManaged`: l'endpoint è pubblico. La tua funzione deve autorizzare ogni richiesta stessa.
*Valori validi*: `IamAuth`, `ApplicationManaged`  
*Tipo:* stringa  
*Obbligatorio:* sì  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[AuthType](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-authtype)` proprietà di una `AWS::Lambda::WebFunctionEndpoint` risorsa. 

 `AutoDeploymentMode`   <a name="sam-webfunction-autodeploymentmode"></a>
In che modo l'endpoint indirizza il traffico tra le revisioni.  
+ `LatestRevision`: invia il 100% del traffico alla revisione creata da questa distribuzione.
+ `Disabled`: indirizza il traffico in base a. [RevisionWeights](#sam-webfunction-revisionweights)
I valori che `RevisionWeights` è possibile utilizzare e se sono obbligatori dipendono da [EndpointType](#sam-webfunction-endpointtype):  
+ `HomeRegion`: usa uno dei due valori. Con`Disabled`, `RevisionWeights` è obbligatorio.
+ `MultiRegion`oppure`PerRegion`: usa`Disabled`. Se ometti`RevisionWeights`, l'endpoint indirizza il 100% del traffico verso la revisione creata nello stesso stack, in modo da poter creare l'endpoint in un'unica implementazione. Il traffico non passa alle revisioni create dalle implementazioni successive.
Il valore deve essere risolto quando si AWS SAM trasforma il modello. È supportato un parametro `Ref` da A a. Altre funzioni intrinseche non sono supportate.  
*Valori validi*: `LatestRevision`, `Disabled`  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*Default*: `LatestRevision`  
*CloudFormation compatibilità*: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.

 `CodeUri`   <a name="sam-webfunction-codeuri"></a>
La posizione Amazon S3 del pacchetto di distribuzione. Specificare un `s3://{{bucket}}/{{key}}` URI o un oggetto con `Bucket` e `Version` chiavi opzionali. `Key` Per i requisiti del bucket, consulta la nota nella parte superiore di questa pagina.  
*Tipo*: Stringa \| [CodeUri](sam-property-webfunction-codeuri.md)  
*Obbligatorio:* sì  
*CloudFormation compatibilità*: Questa proprietà è simile alla `[BuildConfig.CodeConfig.S3Object](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-s3object.html)` proprietà di una `AWS::Lambda::WebFunctionRevision` risorsa. AWS SAM converte un `s3://` URI in `Bucket``Key`, e`VersionId`. 

 `EgressNetworkConnectorArn`   <a name="sam-webfunction-egressnetworkconnectorarn"></a>
L'ARN con certificazione di versione di un connettore di rete che indirizza il traffico in uscita della funzione attraverso il tuo VPC. L'ARN deve terminare con un numero di versione, ad esempio. `arn:aws:lambda:us-east-1:123456789012:network-connector:my-connector:1` Per utilizzare la versione più recente di un connettore nello stesso modello, specificare`!GetAtt {{MyConnector}}.LatestVersionArn`. I connettori [ComputeTypes](sam-resource-networkconnector.md#sam-networkconnector-computetypes)devono essere`WebFunction`.  
Se si specifica una stringa letterale, AWS SAM verifica che si tratti di un connettore di rete ARN con qualifica di versione. Le funzioni intrinseche vengono passate e convalidate dal servizio. La modifica di questo valore crea una nuova revisione.  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[ServiceConfig.EgressNetworkConnectorArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html)` proprietà di una `AWS::Lambda::WebFunctionRevision` risorsa. 

 `EndpointDescription`   <a name="sam-webfunction-endpointdescription"></a>
Una descrizione dell'endpoint.  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-description)` proprietà di una `AWS::Lambda::WebFunctionEndpoint` risorsa. 

 `EndpointName`   <a name="sam-webfunction-endpointname"></a>
Il nome dell'endpoint. La modifica del nome sostituisce l'endpoint. La modifica sostituisce `EndpointType` anche l'endpoint, quindi cambia `EndpointName` contemporaneamente. CloudFormation non può sostituire una risorsa con nome personalizzato senza un nuovo nome.  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*Default*: `prod`  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[EndpointName](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-endpointname)` proprietà di una `AWS::Lambda::WebFunctionEndpoint` risorsa. 

 `EndpointType`   <a name="sam-webfunction-endpointtype"></a>
Dove l'endpoint serve il traffico.  
+ `HomeRegion`: serve dalla regione dello stack.
+ `MultiRegion`: replica la funzione nelle regioni [ReplicaRegions](#sam-webfunction-replicaregions)e indirizza ogni richiesta alla regione più vicina.
+ `PerRegion`: espone un endpoint separato in ogni regione di replica.
`MultiRegion`e richiedono. `PerRegion` `AutoDeploymentMode: Disabled`  
*Valori validi*:`HomeRegion`,`MultiRegion`, `PerRegion`  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*Default*: `HomeRegion`  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[EndpointType](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-endpointtype)` proprietà di una `AWS::Lambda::WebFunctionEndpoint` risorsa. 

 `EntryPoint`   <a name="sam-webfunction-entrypoint"></a>
Il file eseguito dal runtime, relativo alla radice del pacchetto di distribuzione. AWS SAM lo passa al runtime nella variabile di `AWS_LAMBDA_NODEJS_ENTRYPOINT` ambiente riservata.  
Non è possibile utilizzare questa proprietà quando `EnvironmentVariables` è una funzione intrinseca.  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*Default*: `index.js`  
*CloudFormation compatibilità*: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.

 `EnvironmentVariables`   <a name="sam-webfunction-environmentvariables"></a>
Key-value coppie da impostare come variabili di ambiente per la revisione.  
+ Le chiavi devono iniziare con una lettera e contenere solo lettere, numeri e caratteri di sottolineatura.
+ I valori non devono essere vuoti e contenere al massimo 4.096 caratteri.
+ AWS SAM converte numeri e valori booleani in stringhe.
*Tipo: Mappa*  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[ServiceConfig.EnvironmentVariables](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-environmentvariables)` proprietà di una `AWS::Lambda::WebFunctionRevision` risorsa. 

 `ExecutionRoleArn`   <a name="sam-webfunction-executionrolearn"></a>
L'ARN del ruolo IAM che la funzione assume durante l'esecuzione. Se non specifichi un ruolo, ne AWS SAM crea uno con la policy `AWSLambdaBasicExecutionRole` gestita e un ID logico di. `{{<resource-logical-id>}}Role`  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[ServiceConfig.ExecutionRoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-executionrolearn)` proprietà di una `AWS::Lambda::WebFunctionRevision` risorsa. 

 `FunctionName`   <a name="sam-webfunction-functionname"></a>
Il nome della funzione. I nomi delle funzioni devono essere univoci all'interno di un account in tutte le regioni. Se non si specifica un nome, ne AWS SAM genera uno dall'ID logico e dall'ID dello stack, con un massimo di 64 caratteri. La modifica del nome sostituisce la funzione, la sua revisione e il relativo endpoint.  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[FunctionName](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunction.html#cfn-lambda-webfunction-functionname)` proprietà delle risorse `AWS::Lambda::WebFunction``AWS::Lambda::WebFunctionRevision`, e. `AWS::Lambda::WebFunctionEndpoint` 

 `InlineCode`   <a name="sam-webfunction-inlinecode"></a>
Non supportata per`AWS::Serverless::WebFunction`. Utilizza [CodeUri](#sam-webfunction-codeuri).  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà è unica AWS SAM e non ha un CloudFormation equivalente.

 `KmsKeyArn`   <a name="sam-webfunction-kmskeyarn"></a>
L'ARN della AWS KMS chiave utilizzata per crittografare le variabili di ambiente della revisione.  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionrevision.html#cfn-lambda-webfunctionrevision-kmskeyarn)` proprietà di una risorsa. `AWS::Lambda::WebFunctionRevision` 

 `LoggingConfig`   <a name="sam-webfunction-loggingconfig"></a>
La configurazione di registrazione per la revisione, ad esempio il gruppo di log e i livelli di registro.  
*Tipo: Mappa*  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[ServiceConfig.TelemetryConfig.LoggingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-telemetryconfig.html#cfn-lambda-webfunctionrevision-telemetryconfig-loggingconfig)` proprietà di una `AWS::Lambda::WebFunctionRevision` risorsa. 

 `MaxConcurrencyPerEnvironment`   <a name="sam-webfunction-maxconcurrencyperenvironment"></a>
Il numero massimo di richieste simultanee gestite da ogni ambiente di esecuzione.  
*Tipo*: integer  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[ServiceConfig.MaxConcurrencyPerEnvironment](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-maxconcurrencyperenvironment)` proprietà di una `AWS::Lambda::WebFunctionRevision` risorsa. 

 `ReplicaRegions`   <a name="sam-webfunction-replicaregions"></a>
Le regioni in cui replicare la funzione. Utilizzate questa proprietà con `MultiRegion` e gli `PerRegion` endpoint. Specificate un elenco di codici regionali e gruppi di regioni o un oggetto con un `IncludeRegions` `ExcludeRegions` facoltativo.  
*Tipo*: Elenco \| [ReplicaRegions](sam-property-webfunction-replicaregions.md)  
*Obbligatorio:* no  
*CloudFormation compatibilità*: Questa proprietà è simile alla `[Regions](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-regions)` proprietà di una `AWS::Lambda::WebFunctionEndpoint` risorsa. AWS SAM espande i gruppi di regioni e si applica `ExcludeRegions` per produrre l'elenco delle regioni. 

 `RevisionDescription`   <a name="sam-webfunction-revisiondescription"></a>
Una descrizione della revisione creata da questa distribuzione.  
▬*Tipo:* stringa  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionrevision.html#cfn-lambda-webfunctionrevision-description)` proprietà di una `AWS::Lambda::WebFunctionRevision` risorsa. 

 `RevisionWeights`   <a name="sam-webfunction-revisionweights"></a>
Una mappa degli ID di revisione in base ai pesi del traffico. Usa questa proprietà quando è`AutoDeploymentMode`. `Disabled` Specificate fino a due revisioni. Ogni peso è un numero intero compreso tra 1 e 100 e la somma dei pesi deve essere 100.  
*Tipo:* [RevisionWeights](sam-property-webfunction-revisionweights.md)  
*Obbligatorio:* condizionale. Obbligatorio quando `AutoDeploymentMode` è `Disabled` ed è. `EndpointType` `HomeRegion`  
*CloudFormation compatibilità*: questa proprietà è simile alla `[RevisionWeights](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-revisionweights)` proprietà di una `AWS::Lambda::WebFunctionEndpoint` risorsa. AWS SAM converte la mappa in un elenco di `Weight` oggetti `RevisionId` e. 

 `Runtime`   <a name="sam-webfunction-runtime"></a>
Il runtime della funzione, ad esempio`nodejs24.x`.  
*Tipo:* stringa  
*Obbligatorio:* sì  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[BuildConfig.RuntimeConfig.Runtime](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-runtimeconfig.html#cfn-lambda-webfunctionrevision-runtimeconfig-runtime)` proprietà di una `AWS::Lambda::WebFunctionRevision` risorsa. 

 `ScalingConfig`   <a name="sam-webfunction-scalingconfig"></a>
La configurazione di scalabilità per l'endpoint, ad esempio il numero massimo di ambienti di esecuzione.  
*Tipo: Mappa*  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[ScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-scalingconfig)` proprietà di una `AWS::Lambda::WebFunctionEndpoint` risorsa. 

 `Tags`   <a name="sam-webfunction-tags"></a>
Una mappa di coppie chiave-valore che specifica i tag aggiunti alla funzione e al ruolo di esecuzione che genera. AWS SAM   
*Tipo: Mappa*  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà è simile alla `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunction.html#cfn-lambda-webfunction-tags)` proprietà di una `AWS::Lambda::WebFunction` risorsa. La `Tags` proprietà in AWS SAM è costituita da coppie chiave-valore (mentre in CloudFormation questa proprietà è costituita da un elenco di `Tag` oggetti). Inoltre, aggiunge AWS SAM automaticamente un `lambda:createdBy:SAM` tag alla funzione e al ruolo predefinito generato per essa. 

 `ThrottleConfig`   <a name="sam-webfunction-throttleconfig"></a>
La configurazione di limitazione per l'endpoint, ad esempio la frequenza massima di richieste.  
*Tipo: Mappa*  
*Obbligatorio:* no  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[ThrottleConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-throttleconfig)` proprietà di una `AWS::Lambda::WebFunctionEndpoint` risorsa. 

 `Timeout`   <a name="sam-webfunction-timeout"></a>
Il tempo massimo, in secondi, in cui la funzione può essere eseguita per richiesta. I valori validi sono compresi tra 3 e 900.  
*Tipo*: integer  
*Obbligatorio:* no  
*Default*: `30`  
*CloudFormation compatibilità*: questa proprietà viene passata direttamente alla `[ServiceConfig.TimeoutSeconds](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-timeoutseconds)` proprietà di una `AWS::Lambda::WebFunctionRevision` risorsa. 

## Valori restituiti
<a name="sam-resource-webfunction-return-values"></a>

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

Quando l'ID logico di questa risorsa viene fornito alla funzione `Ref` intrinseca, restituisce l'ARN della funzione Web. Se hai bisogno del nome della funzione, usa invece il valore di. `FunctionName`

Per ulteriori informazioni sull'uso della `Ref` funzione, [`Ref`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html)consultate la *Guida AWS CloudFormation per l'utente*.

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

`Fn::GetAtt` restituisce un valore per un attributo specificato di questo tipo. Di seguito sono riportati gli attributi disponibili e i valori restituiti di esempio.

Per ulteriori informazioni sull'utilizzo`Fn::GetAtt`, consulta [`Fn::GetAtt`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html)la *Guida per l'AWS CloudFormation utente*.

`FunctionArn`  <a name="sam-webfunction-getatt-functionarn"></a>
L'Amazon Resource Name (ARN) della funzione Web.

`State`  <a name="sam-webfunction-getatt-state"></a>
Lo stato attuale della funzione Web.

`StateReason`  <a name="sam-webfunction-getatt-statereason"></a>
Il motivo dello stato attuale della funzione Web.

`CreatedAt`  <a name="sam-webfunction-getatt-createdat"></a>
L'ora in cui è stata creata la funzione Web.

`UpdatedAt`  <a name="sam-webfunction-getatt-updatedat"></a>
L'ora dell'ultimo aggiornamento della funzione Web.

Per fare riferimento alla revisione o all'endpoint che AWS SAM genera, usa i relativi ID logici e. `{{<resource-logical-id>}}Revision` `{{<resource-logical-id>}}Endpoint` Ad esempio, `!GetAtt MyWebFunctionEndpoint.DomainName` restituisce il nome di dominio dell'endpoint per una funzione Web con l'ID logico. `MyWebFunction` Per ulteriori informazioni, consulta [CloudFormation risorse generate quando AWS::Serverless::WebFunction è specificato](sam-specification-generated-resources-webfunction.md).

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

### Funzione Web di base
<a name="sam-resource-webfunction-example-basic"></a>

L'esempio seguente crea una funzione Web con un IAM-authorized endpoint nella regione dello stack. AWS SAM genera il ruolo di esecuzione e l'endpoint indirizza tutto il traffico verso la revisione creata da questa distribuzione.

```
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}
```

### Suddividi il traffico tra due revisioni
<a name="sam-resource-webfunction-example-canary"></a>

L'esempio seguente disattiva la distribuzione automatica e invia il 90% del traffico a una revisione esistente e il 10% a un'altra. Entrambe le revisioni devono già esistere.

```
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 Funzione Web
<a name="sam-resource-webfunction-example-multiregion"></a>

L'esempio seguente replica la funzione nelle regioni degli Stati Uniti ad eccezione delle regioni degli Stati Uniti `us-west-1` e indirizza ogni richiesta alla regione più vicina. Poiché `RevisionWeights` è omesso, l'endpoint indirizza tutto il traffico verso la revisione creata in questo stack.

```
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
```

### Funzione Web con uscita VPC
<a name="sam-resource-webfunction-example-vpc-egress"></a>

L'esempio seguente crea un connettore di rete per Web Functions e indirizza il traffico in uscita della funzione attraverso le sottoreti e i gruppi di sicurezza del connettore.

```
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
```