Criar o SDK para navegadores - AWS SDK for JavaScript

Anunciamos o próximo fim do suporte para o AWS SDK for JavaScript v2. Recomendamos migrar para o AWS SDK for JavaScript v3. Para saber as datas e receber detalhes adicionais e informações sobre como migrar, consulte o anúncio vinculado.

Criar o SDK para navegadores

O SDK para JavaScript é fornecido como um arquivo JavaScript com suporte incluído para um conjunto padrão de serviços. Esse arquivo costuma ser carregado em scripts de navegador que usam uma tag <script> que faz referência ao pacote do SDK hospedado. No entanto, talvez você precise de suporte para serviços diferentes do conjunto padrão ou que precisem personalizar o SDK.

Se trabalhar com o SDK fora de um ambiente que imponha CORS no navegador e quiser acesso a todos os serviços fornecidos pelo SDK para JavaScript, você poderá criar uma cópia personalizada do SDK localmente clonando o repositório e executando as mesmas ferramentas de criação que compilam a versão hospedada padrão do SDK. As seções a seguir descrevem as etapas para compilar o SDK com serviços extras e versões da API.

Usar o SDK Builder para criar o SDK para JavaScript

A maneira mais fácil de criar a própria compilação do AWS SDK for JavaScript é usar o aplicativo web de criador de SDKs em https://sdk.amazonaws.com/builder/js. Use o criador de SDKs para especificar serviços e as versões da API a serem incluídos na compilação.

Escolha Select all services (Selecionar todos os serviços) ou Select all services (Selecionar serviços padrão) como um ponto de partida de onde é possível adicionar ou remover serviços. Escolha Development (Desenvolvimento) para obter um código mais legível ou Minified (Minimizado) para criar uma compilação mini a ser implantada. Depois de escolher os serviços e as versões a serem incluídos, escolha Build (Criar) para criar e fazer download do SDK personalizado.

Usar a CLI para criar o SDK para JavaScript

Para compilar o SDK para JavaScript usando a AWS CLI, você primeiro precisa clonar o repositório Git que contém a fonte do SDK. Você deve ter Git e Node.js instalados no computador.

Primeiro, clone o repositório do GitHub e altere o diretório para o diretório:

git clone https://github.com/aws/aws-sdk-js.git cd aws-sdk-js

Depois de clonar o repositório, faça download dos módulos de dependência do SDK e da ferramenta de compilação:

npm install

Já é possível criar uma versão em pacote do SDK.

Criar a partir da linha de comando

A ferramenta de construção está em dist-tools/browser-builder.js. Execute este script digitando:

node dist-tools/browser-builder.js > aws-sdk.js

Este comando cria o arquivo aws-sdk.js. Este arquivo está descompactado. Por padrão, esse pacote só inclui o conjunto padrão de serviços.

Minimizar saída de compilação

Para reduzir a quantidade de dados na rede, os arquivos JavaScript podem ser compactados por meio de um processo chamado minimização. A minimização remove comentários, espaços desnecessários e outros caracteres que auxiliam na legibilidade humana, mas que não afetam a execução do código. A ferramenta de criação pode produzir uma saída descompactada ou minimizada. Para minimizar a saída de criação, defina a variável de ambiente MINIFY:

MINIFY=1 node dist-tools/browser-builder.js > aws-sdk.js

Criar serviços específicos e versões de API

É possível selecionar quais serviços compilar no SDK. Para selecionar serviços, especifique os nomes de serviço, delimitados por vírgulas, como parâmetros. Por exemplo, para criar apenas Amazon S3 e Amazon EC2, use o seguinte comando:

node dist-tools/browser-builder.js s3,ec2 > aws-sdk-s3-ec2.js

Você também pode selecionar versões da API específicas da criação de serviços adicionando o nome da versão após o nome do serviço. Por exemplo, para criar ambas as versões da API do Amazon DynamoDB, use o seguinte comando:

node dist-tools/browser-builder.js dynamodb-2011-12-05,dynamodb-2012-08-10

Identificadores de serviço e versões de API estão disponíveis nos arquivos de configuração específicos do serviço em https://github.com/aws/aws-sdk-js/tree/master/apis.

Criar todos os serviços

Você pode criar todos os serviços e versões de API incluindo o parâmetro all:

node dist-tools/browser-builder.js all > aws-sdk-full.js

Criar serviços específicos

Para personalizar o conjunto selecionado de serviços incluídos na compilação, passe a variável de ambiente AWS_SERVICES para o comando Browserify que contém a lista de serviços que você deseja. O exemplo a seguir cria os serviços Amazon EC2, Amazon S3 e DynamoDB.

$ AWS_SERVICES=ec2,s3,dynamodb browserify index.js > browser-app.js

Compilar o SDK como uma dependência com Browserify

Node.js tem um mecanismo baseado no módulo para incluir código e funcionalidade de desenvolvedores de terceiros. Essa abordagem modular não tem suporte nativo do JavaScript em execução em navegadores da web. No entanto, com uma ferramenta chamada Browserify, é possível usar a abordagem do módulo Node.js e usar os módulos escritos para Node.js no navegador. Browserify cria as dependências de módulo para um script de navegador em um único arquivo JavaScript autocontido que é possível usar no navegador.

É possível compilar o SDK como uma dependência de biblioteca para qualquer script de navegador usando Browserify. Por exemplo, o seguinte código Node.js exige o SDK:

var AWS = require('aws-sdk'); var s3 = new AWS.S3(); s3.listBuckets(function(err, data) { console.log(err, data); });

Este código de exemplo pode ser compilado em uma versão compatível com navegador usando Browserify:

$ browserify index.js > browser-app.js

O aplicativo, inclusive as dependências do SDK, é disponibilizado no navegador por meio de browser-app.js.

Para obter mais informações sobre o Browserify, consulte o site do Browserify.