Instalação do NPM

A API JavaScript do Earth Engine é distribuída como um pacote npm que é hospedado no GitHub. As instruções a seguir oferecem uma visão geral da instalação da API JavaScript do Google Earth Engine. Para usar a API JavaScript do Earth Engine, você precisará instalar a biblioteca de cliente e as dependências dela no computador e, em seguida, configurar as credenciais de autenticação.

A biblioteca de cliente JavaScript não inclui todas as funcionalidades do editor de código do Earth Engine. Em especial, os recursos da interface do usuário, como botões, painéis e gráficos, são excluídos.

Instalar a biblioteca de cliente

1. Configurar o Node.js e o npm

O npm é um gerenciador de pacotes para JavaScript e Node.js. Verifique se você tem o Node.js 6 ou mais recente e o npm 3 ou mais recente.

node --version
npm --version

Se necessário, instale os dois usando o instalador oficial da sua plataforma.

2. Instalar a biblioteca de cliente do Earth Engine

A biblioteca de cliente pode ser instalada no npm com o seguinte comando:

npm install --save @google/earthengine

Depois de instalada, a biblioteca de cliente é colocada no diretório do projeto atual: node_modules/@google/earthengine/*. Em projetos futuros instale o cliente da mesma forma.

3. Usar a biblioteca de cliente em um aplicativo

No código do aplicativo, exija a API Earth Engine:

var ee = require('@google/earthengine');

Atualizar a biblioteca de cliente

Use o npm para atualizar a biblioteca de cliente para a versão mais recente. No diretório do projeto atual:
npm update @google/earthengine

Saiba mais sobre como atualizar bibliotecas com o npm.

Desinstalar a biblioteca de cliente

Para desinstalar usando o gerenciador de pacotes npm, execute o seguinte comando:

npm uninstall --save @google/earthengine

Isso remove node_modules/@google/earthengine do projeto atual, mas não afeta nenhum projeto em outros diretórios na mesma máquina.

Criar um projeto do Cloud e ativar a API Earth Engine

Siga estas instruções para criar um projeto do Cloud e ativar a API Earth Engine.

Configurar credenciais de autenticação

As APIs do Earth Engine usam o protocolo OAuth 2.0 para autenticar clientes baseados em navegador. Para autenticação do lado do servidor no Node.js, recomendamos contas de serviço. Os apps da Web podem usar qualquer uma das abordagens, com prós e contras discutidos abaixo.

Autenticação do lado do cliente com OAuth

Com a autenticação do lado do cliente em um navegador da Web, os usuários do aplicativo fazem login com as próprias Contas do Google. Esses usuários já precisam estar autorizados a acessar o Earth Engine e ter permissão para ler os recursos usados pelo aplicativo.

Depois de criar um ID do cliente OAuth 2.0, faça a autenticação conforme mostrado abaixo (substitua my-project pelo ID do projeto do Google Cloud):

// Load client library.
var ee = require('@google/earthengine');

// Initialize client library and run analysis.
var initialize = function() {
  ee.initialize(null, null, function() {
    // ... run analysis ...
  }, function(e) {
    console.error('Initialization error: ' + e);
  }, null, 'my-project');
};

// Authenticate using an OAuth pop-up.
ee.data.authenticateViaOauth(YOUR_CLIENT_ID, initialize, function(e) {
  console.error('Authentication error: ' + e);
}, null, function() {
  ee.data.authenticateViaPopup(initialize);
});

Autenticação do lado do servidor com uma conta de serviço

Com a autenticação do lado do servidor, uma chave privada é armazenada com o aplicativo, permitindo que ele acesse a API Earth Engine por meio de uma conta de serviço. Os usuários do aplicativo não precisam ter acesso ao Earth Engine e não precisam fazer login.

No Node.js, apenas a autenticação do lado do servidor é fornecida pela biblioteca de cliente.

Depois de criar uma nova conta de serviço, use a chave privada JSON para autenticar (substitua my-project pelo ID do projeto do Google Cloud):

// Require client library and private key.
var ee = require('@google/earthengine');
var privateKey = require('./.private-key.json');

// Initialize client library and run analysis.
var runAnalysis = function() {
  ee.initialize(null, null, function() {
    // ... run analysis ...
  }, function(e) {
    console.error('Initialization error: ' + e);
  }, null, 'my-project');
};

// Authenticate using a service account.
ee.data.authenticateViaPrivateKey(privateKey, runAnalysis, function(e) {
  console.error('Authentication error: ' + e);
});

Como testar a instalação

Para testar se a autenticação foi configurada corretamente, execute o script a seguir (substitua my-project pelo ID do projeto do Google Cloud):

var ee = require('@google/earthengine');

// Authenticate using one (but not both) of the methods below.
ee.data.authenticateViaOauth(YOUR_CLIENT_ID);
ee.data.authenticateViaPrivateKey(YOUR_PRIVATE_KEY);

ee.initialize(null, null, null, null, null, 'my-project');

// Run an Earth Engine script.
var image = new ee.Image('srtm90_v4');
image.getMap({min: 0, max: 1000}, function(map) {
  console.log(map);
});

Se tudo estiver instalado corretamente, os metadados de uma imagem serão impressos.