

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# AW-每個人的-數據
<a name="aws-apigateway-sqs"></a>

![](http://docs.aws.amazon.com/zh_tw/solutions/latest/constructs/images/experimental.png)


 所有類都在積極開發中，並且在任何未來版本中都會受到非向後兼容的更改或刪除。這些不受[語義版本](https://semver.org/)模型。這意味著，雖然您可以使用它們，但在升級到此軟件包的較新版本時，您可能需要更新源代碼。

**請注意：** 為了確保功能正確，專案中的 AWS 解決方案建構套件和 AWS CDK 套件必須是相同的版本。


|  **語言**  |  **套件**  | 
| --- | --- | 
|  ![](http://docs.aws.amazon.com/zh_tw/solutions/latest/constructs/images/python.png) Python  |  aws\_solutions\_constructs.aws\_apigateway\_sqs  | 
|  ![](http://docs.aws.amazon.com/zh_tw/solutions/latest/constructs/images/typescript.png) 打字稿  |  @aws-solutions-constructs/aws-apigateway-sqs  | 
|  ![](http://docs.aws.amazon.com/zh_tw/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.apigatewaysqs  | 

## Overview
<a name="overview-2"></a>

 此 AWS 解決方案建構實作連接到 Amazon SQS 佇列的 Amazon API 閘道 REST API。

 下面是 TypeScript 中的最小可部署模式定義：

```
import { ApiGatewayToSqs, ApiGatewayToSqsProps } from "@aws-solutions-constructs/aws-apigateway-sqs";

new ApiGatewayToSqs(this, 'ApiGatewayToSqsPattern', {});
```

## Initializer
<a name="initializer-2"></a>

```
new ApiGatewayToSqs(scope: Construct, id: string, props: ApiGatewayToSqsProps);
```

 *參數* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  提案[`ApiGatewayToSqsProps`](#pattern-construct-props-2) 

## 模式建立道具
<a name="pattern-construct-props-2"></a>


|  **名稱**  |  **類型**  |  **描述**  | 
| --- | --- | --- | 
|  阿比格特威道具？  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApiProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApiProps.html)  |  可選的使用者提供的道具來覆寫 API Gateway 的預設道具。 | 
|  佇列道具？  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  可選的使用者提供的道具來覆寫佇列的預設道具。 | 
|  部署死亡佇列？  |  boolean  |  是否部署輔助佇列做為無效字母佇列。預設為 true。 | 
|  maxReceiveCount  |  number  |  訊息移到無效字母佇列之前，需交付到無效字母佇列的次數。 | 
|  是否允許作業？  |  boolean  |  是否部署在隊列上創建操作的 API Gateway 方法（即 SQL：發送消息）。 | 
|  建立請求範本？  |  string  |  覆寫建立方法的預設 API Gateway 要求範本，如果allowCreateOperation已設定為true。 | 
|  允許操作？  |  boolean  |  是否部署在隊列上讀取操作的 API Gateway 方法（即 SQL：接收消息）。 | 
|  讀取要求樣板？  |  string  |  覆寫讀取方法的預設 API Gateway 要求範本，如果allowReadOperation已設定為true。 | 
|  是否允許刪除作業？  |  boolean  |  是否部署在隊列上刪除操作的 API Gateway 方法（即 SQL：刪除）。 | 
|  刪除請求範本？  |  string  |  覆寫刪除方法的預設 API Gateway 要求範本，如果allowDeleteOperation已設定為true。 | 
|  記錄群組道具？  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  可選的使用者提供的道具，用於覆寫 CloudWatch Logs 日誌群組的預設道具。 | 

## 模式性質
<a name="pattern-properties-2"></a>


|  **名稱**  |  **類型**  |  **描述**  | 
| --- | --- | --- | 
|  AigGateway  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html)  |  返回由模式創建的 API Gateway REST API 的實例。 | 
|  雲端觀察角色  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  傳回模式所建立的 IAM 角色執行個體，該模式可啟用從 API Gateway REST API 存取記錄至 CloudWatch。 | 
|  應用路徑記錄群組  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  傳回傳送 API Gateway REST API 存取記錄檔的模式所建立之記錄群組的執行個體。 | 
|  應用方式角色  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  傳回由 API Gateway REST API 模式所建立的 IAM 角色執行個體。 | 
|  死機隊列？  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  返回由模式創建的死信隊列的實例，如果一個被部署。 | 
|  平方  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  返回由模式創建的 SQS 隊列的實例。 | 

## 範例 API 使用
<a name="sample-api-usage"></a>


|  **方法**  |  **請求路徑。**  |  **請求內文**  |  **佇列動作**  |  **描述**  | 
| --- | --- | --- | --- | --- | 
|  GET  |  /  |   |  sqs::ReceiveMessage  |  從佇列擷取訊息。 | 
|  POST  |  /  |  { "data": "Hello World\!" }  |  sqs::SendMessage  |  將訊息傳遞到佇列。 | 
|  DELETE  |  /message?receiptHandle=[value]  |   |  sqs::DeleteMessage  |  從佇列刪除指定的訊息  | 

## 預設設定
<a name="default-settings-2"></a>

 此模式的開箱即用實現沒有任何覆蓋將設置以下默認值：

### Amazon API Gateway
<a name="amazon-api-gateway-2"></a>
+  部署邊緣最佳化的 API 端點 
+  為 API Gateway 啟用 CloudWatch 日誌 
+  設定 API Gateway 的最低權限存取 IAM 角色 
+  將所有 API 方法的預設授權類型設定為 IAM 
+  啟用 X-Ray 追蹤

### Amazon SQS 佇列
<a name="amazon-sqs-queue"></a>
+  為來源 SQS 佇列建立 SQS 無效字母佇列 
+  使用 AWS 受管 KMS Key 為來源 SQS 佇列啟用伺服器端加密 
+  強制加密傳輸中的資料 

## Architecture
<a name="architecture-2"></a>

![](http://docs.aws.amazon.com/zh_tw/solutions/latest/constructs/images/aws-apigateway-sqs.png)


## GitHub
<a name="github-2"></a>

[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/solutions/latest/constructs/aws-apigateway-sqs.html)