0.0.6 • Published 7 months ago
@nest-js/aws v0.0.6
Módulo AWS para NestJS
@nest-js/aws
Este módulo proporciona una integración sencilla con varios servicios de AWS para aplicaciones NestJS.
Instalación
El módulo está incluido en el proyecto. Para utilizarlo, importa AwsModule en tu módulo:
import { AwsModule } from './aws/aws.module';
@Module({
imports: [AwsModule],
})
export class YourModule {}Configuración
Credenciales Obligatorias
Estas variables de entorno son requeridas para cualquier servicio de AWS:
AWS_REGION=us-east-1
AWS_ACCESS_KEY_ID=your-access-key
AWS_SECRET_ACCESS_KEY=your-secret-keyConfiguración por Servicio
Configura solo las variables de entorno correspondientes a los servicios que vayas a utilizar:
Cognito (Autenticación y gestión de usuarios)
AWS_COGNITO_USER_POOL_ID=your-user-pool-id
AWS_COGNITO_CLIENT_ID=your-client-idS3 (Almacenamiento de objetos)
AWS_S3_BUCKET=your-bucket-nameDynamoDB (Base de datos NoSQL)
AWS_DYNAMODB_TABLE=your-table-nameSQS (Sistema de colas)
AWS_SQS_QUEUE_URL=your-queue-urlSNS (Servicio de notificaciones)
AWS_SNS_TOPIC_ARN=your-topic-arnSES (Servicio de envío de correos)
AWS_SES_SENDER_EMAIL=no-reply@yourdomain.comAppSync (API GraphQL)
AWS_APPSYNC_API_URL=your-appsync-api-url
AWS_APPSYNC_API_KEY=your-appsync-api-keyUso
Puedes inyectar los servicios que necesites en tus controladores o servicios:
import { CognitoService } from './aws/cognito/cognito.service';
import { S3Service } from './aws/s3/s3.service';
@Injectable()
export class YourService {
constructor(
private readonly cognitoService: CognitoService, // Solo si usas Cognito
private readonly s3Service: S3Service, // Solo si usas S3
) {}
async example() {
// Usar los servicios según necesites
}
}Servicios Disponibles
- Cognito: Autenticación y gestión de usuarios
- S3: Almacenamiento de objetos
- DynamoDB: Base de datos NoSQL
- SQS: Sistema de colas
- SNS: Servicio de notificaciones
- SES: Servicio de envío de correos
- AppSync: API GraphQL gestionada
Cada servicio tiene su propia documentación detallada en su respectivo directorio.