AWS Cloud9 non è più disponibile per i nuovi clienti. I clienti esistenti di AWS Cloud9 possono continuare a utilizzare il servizio normalmente. Scopri di più»
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à.
TypeScripttutorial perAWS Cloud9
Questo tutorial mostra come lavorare conTypeScriptin unAWS Cloud9ambiente di sviluppo.
Seguendo questo tutorial e creando questo esempio, potresti dover pagare dei costiAWSconto. Questi includono possibili addebiti per servizi come Amazon EC2 e Amazon S3. Per ulteriori informazioni, consulta Prezzi di Amazon EC2
Argomenti
Prerequisiti
Prima di usare questo esempio, assicurati che la configurazione soddisfi i seguenti requisiti:
-
È necessario disporre di un ambiente di sviluppo EC2 AWS Cloud9 esistente. Nell'esempio si presume che tu disponga già di un ambiente EC2 connesso a un'istanza Amazon EC2 in cui viene eseguito Amazon Linux o Ubuntu Server. Se disponi di un altro tipo di ambiente o sistema operativo, potrebbe essere necessario adattare le istruzioni di questo esempio per configurare gli strumenti correlati. Per ulteriori informazioni, consulta Creare un ambiente in AWS Cloud9.
-
Si dispone dell'IDE AWS Cloud9 per l'ambiente esistente già aperto. Quando apri un ambiente, AWS Cloud9 apre l'IDE per tale ambiente nel browser Web. Per ulteriori informazioni, consulta Apertura di un ambiente in AWS Cloud9.
Fase 1: installare gli strumenti necessari
In questo passaggio, installiTypeScriptutilizzando Node Package Manager ( npm
). Per installare npm
, puoi utilizzare Node Version Manager ( nvm
). Se non disponi di nvm
, è possibile installarlo in questa fase.
-
In una sessione terminale nelAWS Cloud9IDE, conferma seTypeScriptè già installato eseguendo la riga di comandoTypeScriptcompilatore con
--version
opzione. Per avviare una nuova sessione del terminale, dalla barra dei menu scegli Window (Finestra), New Terminal (Nuovo terminale). Se è già installato, l'output contiene il numero di versione di TypeScript. SeTypeScriptè installato, vai avanti aFase 2: aggiungere un codice.tsc --version
-
Conferma se
npm
è già installato eseguendonpm
con l'opzione--version
. In caso di esito positivo, l'output contiene il numero di versione dinpm
. Senpm
è installato, vai al passaggio 10 di questa procedura per utilizzarlonpm
da installareTypeScript.npm --version
-
Esegui il comando
yum update
per (Amazon Linux) oapt update
per (Ubuntu Server) per verificare che siano installati gli aggiornamenti di sicurezza e le correzioni dei bug più recenti.Per Amazon Linux:
sudo yum -y update
Per Ubuntu Server:
sudo apt update
-
Da installare
npm
, inizia eseguendo il seguente comando per scaricare Node Version Manager (nvm
) . (nvm
è un semplice script di shell Bash utile per installare e gestire le versioni di Node.js. Per ulteriori informazioni, vedereGestore delle versioni dei nodisulGitHubsito web.) curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
-
Per iniziare a utilizzare
nvm
, chiudi la sessione del terminale e avviala nuovamente oppure trova il file~/.bashrc
che contiene i comandi per scaricarenvm
.. ~/.bashrc
-
Conferma che
nvm
è installato eseguendonvm
con l'opzione--version
.nvm --version
-
Installa l'ultima versione 16 di Node.js eseguendo
nvm
. (npm
è incluso in Node.js.)nvm install v16
-
Conferma che Node.js è installato eseguendo la versione della riga di comando di Node.js con l'opzione
--version
.node --version
-
Conferma che
npm
è installato eseguendonpm
con l'opzione--version
.npm --version
-
InstallareTypeScriptcorrendo
npm
con il-g
opzione. Questo installaTypeScriptcome pacchetto globale per l'ambiente.npm install -g typescript
-
Conferma cheTypeScriptviene installato eseguendo la riga di comandoTypeScriptcompilatore con
--version
opzione.tsc --version
Fase 2: aggiungere un codice
-
Nell'IDE AWS Cloud9, crea un file denominato
hello.ts
. (Per creare un file, nella barra dei menu scegli File, New File (Nuovo file). Per salvare il file, scegli File,Save (Salva)). -
In un terminale nell'IDE, dalla stessa directory del file
hello.ts
, eseguinpm
per installare la libreria@types/node
.npm install @types/node
Questa operazione aggiunge una cartella
node_modules/@types/node
nella stessa directory del filehello.ts
. Questa nuova cartella contiene le definizioni del tipo Node.js cheTypeScriptnecessita più avanti di questa procedura per ilconsole.log
eprocess.argv
proprietà che aggiungerai alhello.ts
fascicolo. -
Aggiungi il seguente codice al file
hello.ts
:console.log('Hello, World!'); console.log('The sum of 2 and 3 is 5.'); const sum: number = parseInt(process.argv[2], 10) + parseInt(process.argv[3], 10); console.log('The sum of ' + process.argv[2] + ' and ' + process.argv[3] + ' is ' + sum + '.');
Fase 3: eseguire il codice
-
Nel terminale, dalla stessa cartella del
hello.ts
file, esegui ilTypeScriptcompilatore. Specifica il filehello.ts
e le librerie aggiuntive da includere.tsc hello.ts --lib es6
TypeScriptutilizza il
hello.ts
file e un set di file di libreria ECMAScript 6 (ES6) per trascrivere ilTypeScriptcodice nelhello.ts
file in equivalenteJavaScriptcodice in un file denominatohello.js
. -
Nella finestra Environment (Ambiente) apri il file
hello.js
. -
Nella barra dei menu, selezionare Run (Esegui), Run Configurations (Configurazioni esecuzione), New Run Configuration (Nuova configurazione esecuzione).
-
Nella scheda [New] - Idle ([Nuovo] - inattivo), seleziona Runner: Auto (Esecuzione: auto) e Node.js.
-
Per Command (Comando), digitare
hello.js 5 9
. Nel codice,5
rappresentaprocess.argv[2]
, mentre9
rappresentaprocess.argv[3]
. (process.argv[0]
rappresenta il nome del runtime (node
) eprocess.argv[1]
rappresenta il nome del file (hello.js
).) -
Seleziona Run (Esegui) ed esegui un confronto dell'output. Al termine, scegli Stop (Arresta).
Hello, World! The sum of 2 and 3 is 5. The sum of 5 and 9 is 14.
Nota
Invece di creare una nuova configurazione di esecuzione nell'IDE, puoi anche eseguire questo codice eseguendo il comando node hello.js 5 9
dal terminale.
Fase 4: Installare e configurareAWSSDK perJavaScriptin Node.js
È possibile migliorare questo esempio per utilizzareAWSSDK perJavaScriptin Node.js per creare un bucket Amazon S3, elencare i bucket disponibili e quindi eliminare il bucket appena creato.
In questa fase, si installa e si configura ilAWSSDK perJavaScriptin Node.js. L'SDK offre un modo conveniente per interagire conAWSservizi come Amazon S3, dal tuoJavaScriptcodice. Dopo aver installatoAWSSDK perJavaScriptin Node.js, è necessario configurare la gestione delle credenziali nel proprio ambiente. L'SDK necessita di queste credenziali per interagire con i servizi AWS.
Per installare ilAWSSDK perJavaScriptin Node.js
In una sessione terminale nelAWS Cloud9IDE, dalla stessa cartella delhello.js
file daFase 3: eseguire il codice, correre npm
per installare ilAWSSDK perJavaScriptin Node.js.
npm install aws-sdk
Questo comando aggiunge varie cartelle alla cartella node_modules
da Fase 3: eseguire il codice. Queste cartelle contengono il codice sorgente e le dipendenze perAWSSDK perJavaScriptin Node.js. Per ulteriori informazioni, vedereInstallazione dell'SDK perJavaScriptnelAWS SDK for JavaScriptGuida per gli sviluppatori.
Per configurare la gestione delle credenziali nell'ambiente
Ogni volta che usi ilAWSSDK perJavaScriptin Node.js per chiamare unAWSservizio, è necessario fornire un set di credenziali con la chiamata. Queste credenziali determinano seAWSSDK perJavaScriptin Node.js dispone delle autorizzazioni appropriate per effettuare quella chiamata. Se le credenziali non coprono le autorizzazioni appropriate, la chiamata fallirà.
In questa fase si archiviano le credenziali all'interno dell'ambiente A questo proposito, segui le istruzioni riportate in Chiamata dei AWS servizi da un ambiente in AWS Cloud9, quindi torna a questo argomento.
Per ulteriori informazioni consulta Impostazione delle credenziali su Node.js nella Guida per gli sviluppatori di AWS SDK for JavaScript.
Fase 5: aggiungere un codice SDK AWS
In questa fase si aggiunge altro codice, questa volta per interagire con Amazon S3 e creare un bucket, elencare i bucket disponibili ed eliminare il bucket appena creato. Potrai eseguire questo codice più tardi.
-
Nell'IDE AWS Cloud9, nella stessa directory del file
hello.js
in fasi precedenti, è necessario creare un file denominatos3.ts
. -
Da un terminale nelAWS Cloud9IDE, nella stessa cartella del
s3.ts
file, abilita il codice per richiamare le operazioni di Amazon S3 in modo asincrono eseguendonpm
due volte per installare la libreria asincrona perTypeScripte ancora perJavaScript.npm install @types/async # For TypeScript. npm install async # For JavaScript.
-
Aggiungi il seguente codice al file
s3.ts
:import * as async from 'async'; import * as AWS from 'aws-sdk'; if (process.argv.length < 4) { console.log('Usage: node s3.js <the bucket name> <the AWS Region to use>\n' + 'Example: node s3.js my-test-bucket us-east-2'); process.exit(1); } const AWS = require('aws-sdk'); // To set the AWS credentials and AWS Region. const async = require('async'); // To call AWS operations asynchronously. const s3: AWS.S3 = new AWS.S3({apiVersion: '2006-03-01'}); const bucket_name: string = process.argv[2]; const region: string = process.argv[3]; AWS.config.update({ region: region }); const create_bucket_params: any = { Bucket: bucket_name, CreateBucketConfiguration: { LocationConstraint: region } }; const delete_bucket_params: any = { Bucket: bucket_name }; // List all of your available buckets in this AWS Region. function listMyBuckets(callback): void { s3.listBuckets(function(err, data) { if (err) { } else { console.log("My buckets now are:\n"); for (let i: number = 0; i < data.Buckets.length; i++) { console.log(data.Buckets[i].Name); } } callback(err); }); } // Create a bucket in this AWS Region. function createMyBucket(callback): void { console.log("\nCreating a bucket named '" + bucket_name + "'...\n"); s3.createBucket(create_bucket_params, function(err, data) { if (err) { console.log(err.code + ": " + err.message); } callback(err); }); } // Delete the bucket you just created. function deleteMyBucket(callback): void { console.log("\nDeleting the bucket named '" + bucket_name + "'...\n"); s3.deleteBucket(delete_bucket_params, function(err, data) { if (err) { console.log(err.code + ": " + err.message); } callback(err); }); } // Call the AWS operations in the following order. async.series([ listMyBuckets, createMyBucket, listMyBuckets, deleteMyBucket, listMyBuckets ]);
Fase 6: eseguire il codice SDK AWS
-
Nel terminale, dalla stessa cartella del
s3.ts
file, esegui ilTypeScriptcompilatore. Specifica il files3.ts
e le librerie aggiuntive da includere.tsc s3.ts --lib es6
TypeScriptutilizza il
s3.ts
file, ilAWSSDK perJavaScriptin Node.js, la libreria asincrona e un set di file di libreria ECMAScript 6 (ES6) per trascrivere ilTypeScriptcodice nels3.ts
file in equivalenteJavaScriptcodice in un file denominatos3.js
. -
Nella finestra Environment (Ambiente) apri il file
s3.js
. -
Nella barra dei menu, selezionare Run (Esegui), Run Configurations (Configurazioni esecuzione), New Run Configuration (Nuova configurazione esecuzione).
-
Nella scheda [New] - Idle ([Nuovo] - inattivo), seleziona Runner: Auto (Esecuzione: auto) e Node.js.
-
Per Command (Comando), digita
s3.js YOUR_BUCKET_NAME THE_AWS_REGION
, doveYOUR_BUCKET_NAME
è il nome del bucket che desideri creare ed eliminare eTHE_AWS_REGION
è l'ID della regione AWS in cui creare il bucket. Ad esempio, per la regione Stati Uniti orientali (Ohio) utilizzareus-east-2
. Per ulteriori ID, consulta Amazon Simple Storage Service (Amazon S3) in Riferimenti generali di Amazon Web Services.Nota
I nomi dei bucket di Amazon S3; devono essere univoci in AWS e non solo nell'account AWS.
-
Seleziona Run (Esegui) ed esegui un confronto dell'output. Al termine, scegli Stop (Arresta).
My buckets now are: Creating a new bucket named 'my-test-bucket'... My buckets now are: my-test-bucket Deleting the bucket named 'my-test-bucket'... My buckets now are:
Fase 7: pulire
Per evitare addebiti continuativi sull'account AWS dopo aver utilizzato questo esempio, devi eliminare l'ambiente. Per istruzioni, consultare Eliminazione di un ambiente in AWS Cloud9.