Aufbau von Lambda-Funktionen mit TypeScript - AWS Lambda

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Aufbau von Lambda-Funktionen mit TypeScript

Sie können die Laufzeit von Node.js verwenden, um TypeScript Code darin AWS Lambda auszuführen. Da Node.js TypeScript Code nicht nativ ausführt, müssen Sie Ihren TypeScript Code zuerst in das Format transpilieren. JavaScript Verwenden Sie dann die JavaScript Dateien, um Ihren Funktionscode für Lambda bereitzustellen. Ihr Code wird in einer Umgebung ausgeführt, die die Funktion AWS SDK for JavaScript, mit Anmeldeinformationen aus einer AWS Identity and Access Management (IAM) -Rolle enthält, die Sie verwalten. Weitere Informationen zu den SDK Versionen, die in den Laufzeiten von Node.js enthalten sind, finden Sie unterVersionen, die zur Laufzeit gehören SDK.

Lambda unterstützt die folgenden Node.js-Laufzeiten.

Node.js
Name ID Betriebssystem Datum der Veraltung Blockfunktion erstellen Blockfunktion aktualisieren

Node.js 20

nodejs20.x

Amazon Linux 2023

Node.js 18

nodejs18.x

Amazon Linux 2

Eine TypeScript Entwicklungsumgebung einrichten

Verwenden Sie eine lokale integrierte Entwicklungsumgebung (IDE), einen Texteditor oder AWS Cloud9um Ihren TypeScript Funktionscode zu schreiben. Sie können auf der Lambda-Konsole keinen TypeScript Code erstellen.

Um Ihren TypeScript Code zu transpilieren, richten Sie einen Compiler wie esbuild oder Microsofts TypeScript Compiler (tsc) ein, der im Lieferumfang der Distribution enthalten ist. TypeScript Sie können das AWS Serverless Application Model (AWS SAM) oder das verwenden, um das Erstellen und Bereitstellen von Code AWS Cloud Development Kit (AWS CDK)zu vereinfachen. TypeScript Beide Tools verwenden Esbuild, um TypeScript Code zu transpilieren. JavaScript

Wenn Sie esbuild verwenden, beachten Sie Folgendes:

Beispiel tsconfig.json
{ "compilerOptions": { "target": "es2020", "strict": true, "preserveConstEnums": true, "noEmit": true, "sourceMap": false, "module":"commonjs", "moduleResolution":"node", "esModuleInterop": true, "skipLibCheck": true, "forceConsistentCasingInFileNames": true, "isolatedModules": true, }, "exclude": ["node_modules", "**/*.test.ts"] }