aws-apigateway-sqs - Costrutti delle soluzioni AWS

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-apigateway-sqs

Tutte le classi sono in fase di sviluppo attivo e soggette a modifiche o rimozione non compatibili con le versioni precedenti in qualsiasi versione futura. Questi non sono soggetti allaSemantic versioningModello. Ciò significa che, mentre è possibile utilizzarli, potrebbe essere necessario aggiornare il codice sorgente quando si esegue l'aggiornamento a una versione più recente di questo pacchetto.

Nota: Per garantire la corretta funzionalità, i pacchetti AWS Solutions Constructs e i pacchetti AWS CDK nel progetto devono essere della stessa versione.

Linguaggio Pacchetto
Python
aws_solutions_constructs.aws_apigateway_sqs
TypeScript
@aws-solutions-constructs/aws-apigateway-sqs
Java
software.amazon.awsconstructs.services.apigatewaysqs

Overview

Questo Construct di soluzioni AWS implementa un'Amazon API Gateway API connessa a una coda Amazon SQS.

Ecco una definizione di modello distribuibile minima in TypeScript:

import { ApiGatewayToSqs, ApiGatewayToSqsProps } from "@aws-solutions-constructs/aws-apigateway-sqs"; new ApiGatewayToSqs(this, 'ApiGatewayToSqsPattern', {});

Initializer

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

Parametri

Puntelli di costruzione modelli

Nome Tipo Descrizione
ApiGatewayProps? api.RestApiProps Elementi di scena facoltativi forniti dall'utente per sovrascrivere gli oggetti di scena predefiniti per il API Gateway.
QueueProps? sqs.QueueProps Elementi di scena facoltativi forniti dall'utente per sovrascrivere gli oggetti di scena predefiniti per la coda.
DeployDeadLetterQueue? boolean Indica se distribuire una coda secondaria da utilizzare come coda DLQ. L'impostazione predefinita è true.
MaxReceiveCount number Il numero di volte in cui un messaggio può essere rimosso dalla coda senza successo prima di essere spostato nella coda DLQ.
AllowCreateOperation? boolean Se distribuire un metodo API Gateway per le operazioni di creazione sulla coda (ad esempio SQS: SendMessage).
CreateRequestTemplate? string Sostituisci il modello di richiesta API Gateway predefinito per il metodo Create, seallowCreateOperationè impostato su .true: .
AllowReadOperation? boolean Se distribuire un metodo API Gateway per le operazioni di lettura nella coda (ad esempio SQS: ReceveMessage).
ReadRequestTemplate? string Sostituisci il modello di richiesta API Gateway predefinito per il metodo Read, seallowReadOperationè impostato su .true: .
AllowDeleteOperation? boolean Se distribuire un metodo API Gateway per le operazioni di eliminazione sulla coda (ad esempio SQS: DeleteMessage).
DeleteRequestTemplate? string Sostituisci il modello di richiesta API Gateway predefinito per il metodo Delete, seallowDeleteOperationè impostato su .true: .
LogGroupProps? logs.LogGroupProps Elementi di scena facoltativi forniti dall'utente per sovrascrivere gli oggetti di scena predefiniti per il gruppo di log CloudWatch Logs.

Proprietà modelli

Nome Tipo Descrizione
ApiGateway api.RestApi Restituisce un'istanza dell'API REST del gateway API creata dal modello.
APigatewayCloudWatchRole iam.Role Restituisce un'istanza del ruolo IAM creato dal pattern che abilita la registrazione degli accessi dall'API REST del gateway API a CloudWatch.
ApiGatewayLogGroup logs.LogGroup Restituisce un'istanza del gruppo di log creato dal modello a cui vengono inviati i log di accesso API REST del API Gateway API.
ApiGatewayRole iam.Role Restituisce un'istanza del ruolo IAM creato dal pattern per l'API REST del gateway API.
DeadLetterQueue? sqs.Queue Restituisce un'istanza della coda di lettere morte creata dal modello, se ne viene distribuita una.
SQSqueue sqs.Queue Restituisce un'istanza della coda SQS creata dal pattern.

Uso di API di esempio

Metodo Percorso della richiesta Corpo della richiesta Azione coda Descrizione
GET / sqs::ReceiveMessage Recupera un messaggio dalla coda.
POST / { "data": "Hello World!" } sqs::SendMessage Consegna un messaggio alla coda.
DELETE /message?receiptHandle=[value] sqs::DeleteMessage Elimina un messaggio specificato dalla coda

Impostazioni predefinite

L'implementazione predefinita di questo modello senza sostituzioni imposterà i seguenti valori predefiniti:

Amazon API Gateway

  • Distribuzione di un endpoint API ottimizzato per gli edge

  • Abilitare la registrazione CloudWatch per API Gateway

  • Configurare il ruolo IAM di accesso ai privilegi minimi per il API Gateway

  • Impostare l'AuthorizationType predefinito per tutti i metodi API su IAM

  • Abilitare la traccia X-Ray

Coda Amazon SQS

  • Distribuzione della coda DLS per la coda SQS di origine

  • Abilitare la crittografia lato server per la coda SQS di origine mediante AWS gestita

  • Applicazione della crittografia dei dati in transito

Architecture

GitHub

Per visualizzare il codice per questo modello, creare/visualizzare problemi e richieste pull e altro ancora:
@aws -solutions-constructs/aws-apigateway-sqs