Earth Engine JavaScript API didistribusikan sebagai paket npm yang dihosting di GitHub. Petunjuk berikut memberikan ringkasan penginstalan Google Earth Engine JavaScript API. Untuk menggunakan Earth Engine JavaScript API, Anda harus menginstal library klien dan dependensinya di komputer, lalu menyiapkan kredensial autentikasi.
Library klien JavaScript tidak menyertakan semua fungsi Editor Kode Earth Engine. Secara khusus, fitur antarmuka pengguna seperti tombol, panel, dan diagram dikecualikan.
Menginstal library klien
1. Menyiapkan Node.js dan npm
npm adalah pengelola paket untuk JavaScript dan Node.js. Pastikan Anda memiliki Node.js 6+ dan npm 3+.
node --version npm --version
Jika diperlukan, instal keduanya menggunakan penginstal resmi untuk platform Anda.
2. Menginstal library klien Earth Engine
Library klien dapat diinstal dari npm dengan perintah berikut:
npm install --save @google/earthengine
Setelah diinstal, library klien ditempatkan dalam direktori project saat ini: node_modules/@google/earthengine/*
. Pada project
mendatang, instal klien dengan cara yang sama.
3. Menggunakan library klien dalam aplikasi
Dalam kode aplikasi Anda, minta Earth Engine API:
var ee = require('@google/earthengine');
Memperbarui library klien
Gunakan npm untuk mengupdate library klien ke versi terbaru. Dari direktori project saat ini:npm update @google/earthengine
Pelajari lebih lanjut cara mengupdate library dengan npm.
Meng-uninstal library klien
Untuk meng-uninstal menggunakan pengelola paket npm, jalankan perintah berikut:
npm uninstall --save @google/earthengine
Tindakan ini akan menghapus node_modules/@google/earthengine
dari project saat ini, tetapi tidak memengaruhi project apa pun di direktori lain pada komputer yang sama.
Membuat Project Cloud dan mengaktifkan Earth Engine API
Ikuti petunjuk ini untuk membuat project Cloud dan mengaktifkan Earth Engine API.
Menyiapkan Kredensial Autentikasi
Earth Engine API menggunakan protokol OAuth 2.0 untuk mengautentikasi klien berbasis browser. Untuk autentikasi sisi server di Node.js, akun layanan direkomendasikan. Aplikasi web dapat menggunakan salah satu pendekatan, dengan pro dan kontra yang dibahas di bawah.
Autentikasi sisi klien dengan OAuth
Dengan autentikasi sisi klien di browser web, pengguna aplikasi Anda akan login dengan akun Google mereka sendiri. Pengguna ini harus sudah diberi otorisasi untuk mengakses Earth Engine, dan harus memiliki izin untuk membaca aset yang digunakan oleh aplikasi Anda.
Setelah membuat Client ID OAuth 2.0, lakukan autentikasi seperti yang ditunjukkan di bawah:
// 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); }); }; // 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); });
Autentikasi sisi server dengan akun layanan
Dengan autentikasi sisi server, kunci pribadi disimpan dengan aplikasi Anda, sehingga memungkinkannya mengakses Earth Engine API melalui akun layanan. Pengguna aplikasi Anda tidak memerlukan aksesnya sendiri ke Earth Engine, dan tidak diwajibkan untuk login.
Di Node.js, hanya autentikasi sisi server yang disediakan oleh library klien.
Setelah membuat akun layanan baru, gunakan kunci pribadi JSON Anda untuk mengautentikasi:
// 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); }); }; // Authenticate using a service account. ee.data.authenticateViaPrivateKey(privateKey, runAnalysis, function(e) { console.error('Authentication error: ' + e); });
Menguji penginstalan
Untuk menguji apakah autentikasi telah disiapkan dengan benar, jalankan skrip berikut:
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(); // Run an Earth Engine script. var image = new ee.Image('srtm90_v4'); image.getMap({min: 0, max: 1000}, function(map) { console.log(map); });
Jika semuanya diinstal dengan benar, metadata untuk gambar akan dicetak.