Earth Engine JavaScript API, GitHub'da barındırılan bir npm paketi olarak dağıtılır. Aşağıdaki talimatlarda, Google Earth Engine JavaScript API'nin yüklenmesiyle ilgili genel bilgiler verilmektedir. Earth Engine JavaScript API'yi kullanmak için bilgisayarınıza istemci kitaplığını ve bağımlılıklarını yüklemeniz, ardından kimlik doğrulama bilgilerini ayarlamanız gerekir.
JavaScript istemci kitaplığı, Earth Engine Code Editor'ın tüm işlevlerini içermez. Özellikle düğmeler, paneller ve grafikler gibi kullanıcı arayüzü özelliklerinin hariç tutulduğunu belirtmek isteriz.
İstemci kitaplığını yükleme
1. Node.js ve npm'yi ayarlama
npm, JavaScript ve Node.js için bir paket yöneticisidir. Node.js 6+ ve npm 3+ sürümlerinin yüklü olduğunu doğrulayın.
node --version npm --version
Gerekirse her ikisini de platformunuzun resmi yükleyicisini kullanarak yükleyin.
2. Earth Engine istemci kitaplığını yükleme
İstemci kitaplığı, aşağıdaki komutla npm'den yüklenebilir:
npm install --save @google/earthengine
Yüklendikten sonra istemci kitaplığı mevcut proje dizinine yerleştirilir: node_modules/@google/earthengine/*. Gelecekteki projelerde istemciyi aynı şekilde yükleyin.
3. İstemci kitaplığını uygulamada kullanma
Uygulama kodunuzda Earth Engine API'yi gerektir:
var ee = require('@google/earthengine');
İstemci kitaplığını güncelleme
İstemci kitaplığını en son sürüme güncellemek için npm'yi kullanın. Mevcut proje dizininden:npm update @google/earthengine
npm ile kitaplıkları güncelleme hakkında daha fazla bilgi edinin.
İstemci kitaplığını kaldırma
npm paket yöneticisini kullanarak kaldırmak için aşağıdaki komutu çalıştırın:
npm uninstall --save @google/earthengine
Bu işlem, node_modules/@google/earthengine uygulamasını mevcut projeden kaldırır ancak aynı makinedeki diğer dizinlerdeki projeleri etkilemez.
Cloud projesi oluşturma ve Earth Engine API'yi etkinleştirme
Cloud projesi oluşturmak ve Earth Engine API'yi etkinleştirmek için bu talimatları uygulayın.
Kimlik Doğrulama Kimlik Bilgilerini Ayarlama
Earth Engine API'leri, tarayıcı tabanlı istemcilerin kimliğini doğrulamak için OAuth 2.0 protokolünü kullanır. Node.js'de sunucu tarafı kimlik doğrulaması için hizmet hesapları önerilir. Web uygulamaları her iki yaklaşımı da kullanabilir. Bu yaklaşımların avantajları ve dezavantajları aşağıda açıklanmıştır.
OAuth ile istemci tarafı kimlik doğrulaması
Web tarayıcısında istemci tarafı kimlik doğrulaması kullanıldığında, uygulamanızın kullanıcıları kendi Google Hesaplarıyla oturum açar. Bu kullanıcıların Earth Engine'e erişmek için önceden yetkilendirilmiş olması ve uygulamanız tarafından kullanılan öğeleri okuma iznine sahip olması gerekir.
OAuth 2.0 istemci kimliği oluşturduktan sonra aşağıdaki gibi kimlik doğrulayın (my-project yerine Google Cloud proje kimliğinizi girin):
// 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); });
Hizmet hesabıyla sunucu tarafı kimlik doğrulaması
Sunucu tarafı kimlik doğrulamasıyla, uygulamanızda özel bir anahtar depolanır. Bu anahtar, uygulamanın bir hizmet hesabı aracılığıyla Earth Engine API'ye erişmesine olanak tanır. Uygulamanızın kullanıcılarının Earth Engine'e erişmek için kendi hesaplarına ihtiyacı yoktur ve oturum açmaları gerekmez.
Node.js'de istemci kitaplığı yalnızca sunucu tarafı kimlik doğrulaması sağlar.
Yeni bir hizmet hesabı oluşturduktan sonra kimlik doğrulamak için JSON özel anahtarınızı kullanın (my-project yerine Google Cloud proje kimliğinizi girin):
// 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); });
Kurulumu test etme
Kimlik doğrulamanın doğru şekilde ayarlandığını test etmek için aşağıdaki komut dosyasını çalıştırın (my-project yerine Google Cloud proje kimliğinizi girin):
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); });
Her şey doğru şekilde yüklendiyse resmin meta verileri yazdırılır.