AWS Cloud9 não está mais disponível para novos clientes. Os clientes atuais do AWS Cloud9 podem continuar usando o serviço normalmente. Saiba mais
As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Tutorial do TypeScript para AWS Cloud9
Este tutorial mostra como trabalhar com TypeScript em um ambiente de desenvolvimento do AWS Cloud9.
Seguindo este tutorial e criando este exemplo pode gerar cobranças em sua conta da AWS. Isso inclui possíveis cobranças por serviços como o Amazon EC2 e Amazon S3. Para obter mais informações, consulte Definição de preço do Amazon EC2
Tópicos
Pré-requisitos
Antes de usar esse exemplo, verifique se suas configurações cumprem os requisitos a seguir.
-
É necessário ter um ambiente existente de desenvolvimento do AWS Cloud9 EC2 Este exemplo pressupõe que você já tem um ambiente do EC2 conectado a uma instância do Amazon EC2 que executa Amazon Linux ou Ubuntu Server. Caso tenha um tipo diferente de ambiente ou sistema operacional, poderá ser necessário adaptar as instruções desse exemplo para configurar ferramentas relacionadas. Para obter mais informações, consulte Criando um ambiente em AWS Cloud9.
-
Você tem o IDE do AWS Cloud9 para o ambiente existente já aberto. Ao abrir um ambiente o AWS Cloud9 abre o IDE para esse ambiente em um navegador da Web. Para obter mais informações, consulte Abrir um ambiente no AWS Cloud9.
Etapa 1: Instalar as ferramentas necessárias
Nesta etapa, você instala TypeScript usando o Node Package Manager ( npm
). Para instalar npm
, você usa o Gerenciador de versão do Node ( nvm
). Se você não tiver nvm
, instale-o nesta etapa primeiro.
-
Em uma sessão de terminal no IDE do AWS Cloud9, confirme se TypeScript já está instalado, executando o compilador TypeScript da linha de comando com a opção
--version
. (Para iniciar uma nova sessão de terminal, na barra de menus, selecione Janela, Novo terminal.) Se sim, a saída contém o número da versão do TypeScript. Se o TypeScript estiver instalado, avance para Etapa 2: Adicionar código.tsc --version
-
Confirme se o
npm
já está instalado executando onpm
com a opção--version
. Se sim, a saída contém o número da versãonpm
. Senpm
estiver instalado, passe para a etapa 10 deste procedimento para usarnpm
para instalar TypeScript.npm --version
-
Execute o comando
yum update
para Amazon Linux ou o comandoapt update
para Ubuntu Server a fim de ajudar a garantir que as atualizações de segurança e correções de bug mais recentes sejam instaladas.Para Amazon Linux:
sudo yum -y update
Para Ubuntu Server:
sudo apt update
-
Para instalar o
npm
, comece executando o comando a seguir para baixar o Gerenciador de versão do Node (nvm
). (nvm
é um script de shell Bash simples e útil para instalar e gerenciar versões do Node.js. Para mais informações, consulte Node Version Manager[Gerenciador de versão do Node] no site do GitHub.) curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
-
Para começar a usar o
nvm
, feche a sessão de terminal e inicie-a novamente ou extraia o arquivo~/.bashrc
que contém os comandos para carregar onvm
.. ~/.bashrc
-
Confirme se o
nvm
está instalado executando onvm
com a opção--version
.nvm --version
-
Instale a versão 16 mais recente do Node.js executando
nvm
. (npm
está incluído em Node.js.)nvm install v16
-
Confirme se o Node.js está instalado executando a versão de linha de comando do Node.js com a opção
--version
.node --version
-
Confirme se o
npm
está instalado executando onpm
com a opção--version
.npm --version
-
Instale TypeScript executando
npm
com a opção-g
. Isso instala o TypeScript como um pacote global no ambiente.npm install -g typescript
-
Confirme se o TypeScript está instalado executando o compilador de linha de comando do TypeScript com a opção
--version
.tsc --version
Etapa 2: Adicionar código
-
No IDE do AWS Cloud9, crie um arquivo denominado
hello.ts
. (Para criar um arquivo, na barra de menus, selecione File (Arquivo), New File (Novo arquivo). Para salvar o arquivo, selecione File (Arquivo), Save (Salvar).) -
Em um terminal no IDE, no mesmo diretório que o arquivo
hello.ts
, executenpm
para instalar a biblioteca@types/node
.npm install @types/node
Isso adiciona uma pasta
node_modules/@types/node
no mesmo diretório que o arquivohello.ts
. Essa nova pasta contém definições de tipo do Node.js de que o TypeScript precisa posteriormente neste procedimento para as propriedadesconsole.log
eprocess.argv
que você adicionará ao arquivohello.ts
. -
Adicione o seguinte código ao arquivo
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 + '.');
Etapa 3: Executar o código
-
No terminal, no mesmo diretório que o arquivo
hello.ts
, execute o compilador do TypeScript. Especifique o arquivohello.ts
e bibliotecas adicionais a serem incluídas.tsc hello.ts --lib es6
O TypeScript usa o arquivo
hello.ts
e um conjunto de arquivos de biblioteca ECMAScript 6 (ES6) para desmembrar o código do TypeScript no arquivohello.ts
em código JavaScript equivalente em um arquivo chamadohello.js
. -
Na janela Ambiente, abra o arquivo
hello.js
. -
Na barra de menus, selecione Executar, Configurações de execução, Nova configuração de execução.
-
Na guia [Novo] – Inativo, selecione Executor: automático e, em seguida, selecione Node.js.
-
Em Comando, digite
hello.js 5 9
. No código,5
representaprocess.argv[2]
, e9
representaprocess.argv[3]
. (process.argv[0]
representa o nome do tempo de execução (node
) eprocess.argv[1]
representa o nome do arquivo (hello.js
).) -
Selecione Executar e compare sua saída. Quando terminar, selecione Parar.
Hello, World! The sum of 2 and 3 is 5. The sum of 5 and 9 is 14.
nota
Em vez de criar uma nova configuração de execução no IDE, você também pode executar esse código executando o comando node hello.js 5 9
no terminal.
Etapa 4: Instalar e configurar o AWS SDK for JavaScript in Node.js
Você pode aprimorar este exemplo para usar o AWS SDK for JavaScript in Node.js para criar um bucket do Amazon S3, listar os buckets disponíveis e excluir o bucket que acabou de criar.
Nesta etapa, instale e configure o AWS SDK for JavaScript in Node.js. Node.js. O SDK fornece uma forma conveniente de interagir com os serviços da AWS, como o Amazon S3, em seu código JavaScript. Depois de instalar o AWS SDK for JavaScript in Node.js, você deverá configurar o gerenciamento de credenciais no ambiente. O SDK precisa dessas credenciais para interagir com os serviços da AWS.
Para instalar o AWS SDK for JavaScript in Node.js
Em uma sessão de terminal no IDE do AWS Cloud9, no mesmo diretório do arquivo hello.js
do Etapa 3: Executar o código, execute npm
para instalar o SDK para JavaScript in Node.js da AWS.
npm install aws-sdk
Esse comando adiciona várias pastas à pasta node_modules
em Etapa 3: Executar o código. Essas pastas contêm código-fonte e as dependências do AWS SDK for JavaScript in Node.js. Para obter mais informações, consulte Instalar o SDK for JavaScript no Manual do desenvolvedor do AWS SDK for JavaScript.
Como configurar o gerenciamento de credenciais no ambiente
Toda vez que você usar o AWS SDK for JavaScript in Node.js para chamar um serviço da AWS, forneça um conjunto de credenciais com a chamada. Essas credenciais determinam se o AWS SDK for JavaScript in Node.js tem as permissões apropriadas para fazer a chamada. Se as credenciais não cobrirem as permissões apropriadas, a chamada falhará.
Nesta etapa, você armazenará as credenciais no ambiente. Para fazer isso, siga as instruções em Chamar serviços da AWS em um ambiente no AWS Cloud9 e retorne a este tópico.
Para obter mais informações, consulte Setting Credentials in Node.js (Definir credenciais no Node.js) no Manual do desenvolvedor do AWS SDK for JavaScript.
Etapa 5: Adicionar código do SDK da AWS
Nesta etapa, adicione mais código, dessa vez para interagir com o Amazon S3 para criar um bucket, listar os buckets disponíveis e, excluir o bucket que você acabou de criar. Esse código será executado mais tarde.
-
No IDE do AWS Cloud9, no mesmo diretório do arquivo
hello.js
em etapas anteriores, crie um arquivo denominados3.ts
. -
Em um terminal do IDE do AWS Cloud9, no mesmo diretório que o arquivo
s3.ts
, permita que o código chame operações do Amazon S3 de forma assíncrona executando onpm
duas vezes para instalar a biblioteca assíncrona para o TypeScript e depois para o JavaScript.npm install @types/async # For TypeScript. npm install async # For JavaScript.
-
Adicione o seguinte código ao arquivo
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 ]);
Etapa 6: Executar o código SDK da AWS
-
No terminal, no mesmo diretório que o arquivo
s3.ts
, execute o compilador do TypeScript. Especifique o arquivos3.ts
e bibliotecas adicionais a serem incluídas.tsc s3.ts --lib es6
O TypeScript usa o arquivo
s3.ts
, o AWS SDK for JavaScript in Node.js, a biblioteca assíncrona e um conjunto de arquivos da biblioteca ECMAScript 6 (ES6) para transpilar o código do TypeScript no arquivos3.ts
em um código JavaScript equivalente em um arquivo chamados3.js
. -
Na janela Ambiente, abra o arquivo
s3.js
. -
Na barra de menus, selecione Executar, Configurações de execução, Nova configuração de execução.
-
Na guia [Novo] – Inativo, selecione Executor: automático e, em seguida, selecione Node.js.
-
Em Command (Comando), digite
s3.js YOUR_BUCKET_NAME THE_AWS_REGION
, em queYOUR_BUCKET_NAME
é o nome do bucket que você deseja criar e excluir, eTHE_AWS_REGION
é o ID da região da AWS onde criar o bucket. Por exemplo, para a região Leste dos EUA (Ohio), useus-east-2
. Para obter mais IDs, consulte Amazon Simple Storage Service (Amazon S3) na Referência geral da Amazon Web Services.nota
Os nomes de buckets do Amazon S3 devem ser exclusivos em toda a AWS, e não apenas na sua conta da AWS.
-
Selecione Executar e compare sua saída. Quando terminar, selecione Parar.
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:
Etapa 7: Limpar
Para evitar cobranças contínuas em sua conta da AWS, ao terminar de usar este exemplo, exclua o ambiente. Para obter instruções, consulte Excluir um ambiente no AWS Cloud9.