

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# HttpApi
<a name="sam-property-function-httpapi"></a>

Objek yang menggambarkan sumber peristiwa dengan tipe HttpApi.

Jika OpenApi definisi untuk jalur dan metode yang ditentukan ada di API, SAM akan menambahkan bagian integrasi dan keamanan Lambda (jika ada) untuk Anda.

Jika tidak ada OpenApi definisi untuk jalur dan metode yang ditentukan di API, SAM akan membuat definisi ini untuk Anda.

## Sintaksis
<a name="sam-property-function-httpapi-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-function-httpapi-syntax.yaml"></a>

```
  [ApiId](#sam-function-httpapi-apiid): String
  [Auth](#sam-function-httpapi-auth): HttpApiFunctionAuth
  [Method](#sam-function-httpapi-method): String
  [Path](#sam-function-httpapi-path): String
  [PayloadFormatVersion](#sam-function-httpapi-payloadformatversion): String
  [RouteSettings](#sam-function-httpapi-routesettings): [RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings)
  [TimeoutInMillis](#sam-function-httpapi-timeoutinmillis): Integer
```

## Sifat-sifat
<a name="sam-property-function-httpapi-properties"></a>

 `ApiId`   <a name="sam-function-httpapi-apiid"></a>
Pengenal dari sumber daya [AWS::Serverless::HttpApi](sam-resource-httpapi.md) yang ditentukan dalam templat ini.  
Jika tidak ditentukan, [AWS::Serverless::HttpApi](sam-resource-httpapi.md) sumber daya default dibuat dengan `ServerlessHttpApi` menggunakan OpenApi dokumen yang dihasilkan yang berisi gabungan semua jalur dan metode yang ditentukan oleh peristiwa Api yang ditentukan dalam templat ini yang tidak menentukan`ApiId`.  
Ini tidak dapat merujuk sumber daya [AWS::Serverless::HttpApi](sam-resource-httpapi.md) yang ditentukan dalam templat lain.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `Auth`   <a name="sam-function-httpapi-auth"></a>
Konfigurasi auth untuk Api\$1Path\$1Metode tertentu ini.  
Berguna untuk membatalkan `DefaultAuthorizer` API atau mengatur auth config pada jalur individu ketika `DefaultAuthorizer` tidak ditentukan.  
*Jenis*: [HttpApiFunctionAuth](sam-property-function-httpapifunctionauth.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `Method`   <a name="sam-function-httpapi-method"></a>
Metode HTTP yang membuat fungsi ini dipanggil.  
Jika `Path` dan `Method` tidak ditentukan, SAM akan membuat jalur API default yang merutekan setiap permintaan yang tidak memetakan ke titik akhir yang berbeda untuk fungsi Lambda ini. Hanya satu dari jalur default ini yang boleh ada per API.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `Path`   <a name="sam-function-httpapi-path"></a>
Jalur Uri yang membuat fungsi ini dipanggil. Harus dimulai dengan `/`.  
Jika `Path` dan `Method` tidak ditentukan, SAM akan membuat jalur API default yang merutekan setiap permintaan yang tidak memetakan ke titik akhir yang berbeda untuk fungsi Lambda ini. Hanya satu dari jalur default ini yang boleh ada per API.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `PayloadFormatVersion`   <a name="sam-function-httpapi-payloadformatversion"></a>
Menentukan format muatan yang dikirim ke integrasi.  
CATATAN: PayloadFormatVersion mengharuskan SAM untuk memodifikasi definisi OpenAPI Anda, sehingga hanya berfungsi dengan definisi sebaris di OpenApi properti. `DefinitionBody`  
*Tipe*: String  
*Wajib*: Tidak  
*Default*: 2.0  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `RouteSettings`   <a name="sam-function-httpapi-routesettings"></a>
Pengaturan rute per rute untuk API HTTP ini. Untuk informasi selengkapnya tentang setelan rute, lihat [AWS::ApiGatewayV2::Stage RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-routesettings.html)di *Panduan Pengembang API Gateway*.  
Catatan: Jika RouteSettings ditentukan dalam HttpApi sumber daya dan sumber peristiwa, AWS SAM gabungkan mereka dengan properti sumber peristiwa yang diutamakan.  
*Jenis*: [RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings)` properti `AWS::ApiGatewayV2::Stage` sumber daya.

 `TimeoutInMillis`   <a name="sam-function-httpapi-timeoutinmillis"></a>
Waktu habis khusus antara 50 dan 29.000 milidetik.  
CATATAN: TimeoutInMillis mengharuskan SAM untuk memodifikasi definisi OpenAPI Anda, sehingga hanya berfungsi dengan definisi sebaris di OpenApi properti. `DefinitionBody`  
*Tipe*: Integer  
*Wajib*: Tidak  
*Default*: 5000  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

## Contoh
<a name="sam-property-function-httpapi--examples"></a>

### HttpApi Acara Default
<a name="sam-property-function-httpapi--examples--default-httpapi-event"></a>

HttpApi Peristiwa yang menggunakan jalur default. Semua jalur dan metode yang belum dipetakan pada API ini akan merutekan ke titik akhir ini.

#### YAML
<a name="sam-property-function-httpapi--examples--default-httpapi-event--yaml"></a>

```
Events:
  HttpApiEvent:
    Type: HttpApi
```

### HttpApi
<a name="sam-property-function-httpapi--examples--httpapi"></a>

HttpApi Peristiwa yang menggunakan jalur dan metode tertentu.

#### YAML
<a name="sam-property-function-httpapi--examples--httpapi--yaml"></a>

```
Events:
  HttpApiEvent:
    Type: HttpApi
    Properties:
      Path: /
      Method: GET
```

### HttpApi Otorisasi
<a name="sam-property-function-httpapi--examples--httpapi-authorization"></a>

HttpApi Event yang menggunakan Authorizer.

#### YAML
<a name="sam-property-function-httpapi--examples--httpapi-authorization--yaml"></a>

```
Events:
  HttpApiEvent:
    Type: HttpApi
    Properties:
      Path: /authenticated
      Method: GET
      Auth:
        Authorizer: OpenIdAuth
        AuthorizationScopes:
          - scope1
          - scope2
```

# HttpApiFunctionAuth
<a name="sam-property-function-httpapifunctionauth"></a>

Mengonfigurasi otorisasi di tingkat peristiwa.

Mengonfigurasi Auth untuk API \$1 Path \$1 Metode tertentu

## Sintaksis
<a name="sam-property-function-httpapifunctionauth-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-property-function-httpapifunctionauth-syntax.yaml"></a>

```
  [AuthorizationScopes](#sam-function-httpapifunctionauth-authorizationscopes): List
  [Authorizer](#sam-function-httpapifunctionauth-authorizer): String
```

## Sifat-sifat
<a name="sam-property-function-httpapifunctionauth-properties"></a>

 `AuthorizationScopes`   <a name="sam-function-httpapifunctionauth-authorizationscopes"></a>
Cakupan otorisasi yang akan diterapkan ke API, path, dan metode ini.  
Lingkup yang tercantum di sini akan membatalkan setiap cakupan yang diterapkan oleh `DefaultAuthorizer` jika ada.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `Authorizer`   <a name="sam-function-httpapifunctionauth-authorizer"></a>
`Authorizer`Untuk Fungsi tertentu. Untuk menggunakan otorisasi IAM, tentukan `AWS_IAM` dan tentukan `true` untuk `EnableIamAuthorizer` di `Globals` bagian template Anda.  
Jika Anda telah menentukan Otorisasi Global pada API dan ingin membuat Fungsi tertentu terbuka untuk publik, batalkan dengan mengatur `Authorizer` menjadi `NONE`.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

## Contoh
<a name="sam-property-function-httpapifunctionauth--examples"></a>

### Function-Auth
<a name="sam-property-function-httpapifunctionauth--examples--function-auth"></a>

Menentukan Otorisasi di tingkat Fungsi

#### YAML
<a name="sam-property-function-httpapifunctionauth--examples--function-auth--yaml"></a>

```
Auth:
  Authorizer: OpenIdAuth
  AuthorizationScopes:
    - scope1
    - scope2
```

### Otorisasi IAM
<a name="sam-property-function-httpapifunctionauth--examples--iam-authorization"></a>

Menentukan otorisasi IAM di tingkat acara. Untuk menggunakan `AWS_IAM` otorisasi di tingkat acara, Anda juga harus menentukan `true` untuk `EnableIamAuthorizer` di `Globals` bagian template Anda. Untuk informasi selengkapnya, lihat [Bagian global dari template AWS SAM](sam-specification-template-anatomy-globals.md).

#### YAML
<a name="sam-property-function-httpapifunctionauth--examples--iam-authorization--yaml"></a>

```
Globals:
  HttpApi:
    Auth:
      EnableIamAuthorizer: true

Resources:
  HttpApiFunctionWithIamAuth:
    Type: AWS::Serverless::Function
    Properties:
      Events:
        ApiEvent:
          Type: HttpApi
          Properties:
            Path: /iam-auth
            Method: GET
            Auth:
              Authorizer: AWS_IAM
      Handler: index.handler
      InlineCode: |
        def handler(event, context):
          return {'body': 'HttpApiFunctionWithIamAuth', 'statusCode': 200}
      Runtime: python3.9
```