Instalacja NPM

Interfejs Earth Engine JavaScript API jest rozpowszechniany jako pakiet npm hostowany na GitHubie. Poniższe instrukcje zawierają omówienie instalacji interfejsu Google Earth Engine JavaScript API. Aby korzystać z interfejsu Earth Engine JavaScript API, musisz zainstalować na komputerze bibliotekę klienta i jej zależności, a następnie skonfigurować dane logowania.

Biblioteka klienta JavaScript nie zawiera wszystkich funkcji edytora Earth Engine Code Editor. Nie obejmuje ona m.in. funkcji interfejsu użytkownika, takich jak przyciski, panele i wykresy.

Instalowanie biblioteki klienta

1. Skonfiguruj Node.js i npm

npm to menedżer pakietów dla JavaScript i Node.js. Sprawdź, czy masz Node.js w wersji 6 lub nowszej oraz npm w wersji 3 lub nowszej.

node --version
npm --version

W razie potrzeby zainstaluj oba te narzędzia za pomocą oficjalnego instalatora dla swojej platformy.

2. Zainstaluj bibliotekę klienta Earth Engine

Bibliotekę klienta można zainstalować z npm za pomocą tego polecenia:

npm install --save @google/earthengine

Po zainstalowaniu biblioteka klienta zostanie umieszczona w bieżącym katalogu projektu: node_modules/@google/earthengine/*. W przyszłych projektach zainstaluj klienta w ten sam sposób.

3. Użyj biblioteki klienta w aplikacji

W kodzie aplikacji wymagaj interfejsu Earth Engine API:

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

Aktualizowanie biblioteki klienta

Aby zaktualizować bibliotekę klienta do najnowszej wersji, użyj npm. W bieżącym katalogu projektu:
npm update @google/earthengine

Więcej informacji o aktualizowaniu bibliotek za pomocą npm.

Odinstalowywanie biblioteki klienta

Aby odinstalować bibliotekę za pomocą menedżera pakietów npm, uruchom to polecenie:

npm uninstall --save @google/earthengine

Spowoduje to usunięcie node_modules/@google/earthengine z bieżącego projektu, ale nie wpłynie na żadne projekty w innych katalogach na tym samym komputerze.

Tworzenie projektu w chmurze i aktywowanie interfejsu Earth Engine API

Aby utworzyć projekt w chmurze i włączyć interfejs Earth Engine API, postępuj zgodnie z tymi instrukcjami.

Konfigurowanie danych logowania

Interfejsy Earth Engine API używają protokołu OAuth 2.0 do uwierzytelniania klientów działających w przeglądarce. W przypadku uwierzytelniania po stronie serwera w Node.js zalecamy używanie konta usługi. Aplikacje internetowe mogą korzystać z obu tych metod. Poniżej omawiamy ich zalety i wady .

Uwierzytelnianie po stronie klienta za pomocą OAuth

W przypadku uwierzytelniania po stronie klienta w przeglądarce użytkownicy aplikacji logują się na swoje konta Google. Ci użytkownicy muszą mieć już uprawnienia dostępu do Earth Engine oraz uprawnienia do odczytu zasobów używanych przez aplikację.

Po utworzeniu identyfikatora klienta OAuth 2.0 uwierzytelnij się w sposób opisany poniżej (zastąp my-project identyfikatorem projektu 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);
});

Uwierzytelnianie po stronie serwera za pomocą konta usługi

W przypadku uwierzytelniania po stronie serwera klucz prywatny jest przechowywany w aplikacji, co umożliwia jej dostęp do interfejsu Earth Engine API za pomocą konta usługi. Użytkownicy aplikacji nie muszą mieć własnego dostępu do Earth Engine ani się logować.

W Node.js biblioteka klienta zapewnia tylko uwierzytelnianie po stronie serwera.

Po utworzeniu nowego konta usługi użyj klucza prywatnego JSON do uwierzytelnienia (zastąp my-project identyfikatorem projektu 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);
});

Testowanie instalacji

Aby sprawdzić, czy uwierzytelnianie zostało prawidłowo skonfigurowane, uruchom ten skrypt (zastąp my-project identyfikatorem projektu w chmurze Google):

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);
});

Jeśli wszystko jest prawidłowo zainstalowane, powinny zostać wydrukowane metadane obrazu.