การติดตั้ง NPM

Earth Engine JavaScript API เผยแพร่เป็น แพ็กเกจ npm ที่ โฮสต์บน GitHub วิธีการต่อไปนี้ จะให้ภาพรวมของการติดตั้ง Google Earth Engine JavaScript API หากต้องการใช้ Earth Engine JavaScript API คุณจะต้อง ติดตั้งไลบรารีของไคลเอ็นต์และการอ้างอิง ในคอมพิวเตอร์ แล้ว ตั้งค่าข้อมูลเข้าสู่ระบบสำหรับการตรวจสอบสิทธิ์

ไลบรารีของไคลเอ็นต์ JavaScript ไม่ได้มีฟังก์ชันการทำงานทั้งหมด ของ Earth Engine Code Editor โดยเฉพาะอย่างยิ่ง ฟีเจอร์อินเทอร์เฟซผู้ใช้ เช่น ปุ่ม แผง และแผนภูมิจะไม่มีรวมอยู่ด้วย

การติดตั้งไลบรารีของไคลเอ็นต์

1. ตั้งค่า Node.js และ npm

npm เป็นตัวจัดการแพ็กเกจสำหรับ JavaScript และ Node.js ตรวจสอบว่าคุณมี Node.js เวอร์ชัน 6 ขึ้นไปและ npm เวอร์ชัน 3 ขึ้นไป

node --version
npm --version

หากจำเป็น ให้ติดตั้งทั้ง 2 อย่างโดยใช้โปรแกรมติดตั้งอย่างเป็นทางการสำหรับแพลตฟอร์มของคุณ

2. ติดตั้งไลบรารีของไคลเอ็นต์ Earth Engine

คุณสามารถติดตั้งไลบรารีของไคลเอ็นต์จาก npm ได้ด้วยคำสั่งต่อไปนี้

npm install --save @google/earthengine

เมื่อติดตั้งแล้ว ระบบจะวางไลบรารีของไคลเอ็นต์ไว้ในไดเรกทอรีโปรเจ็กต์ปัจจุบัน node_modules/@google/earthengine/* สำหรับโปรเจ็กต์ในอนาคต ให้ติดตั้งไคลเอ็นต์ด้วยวิธีเดียวกัน

3. ใช้ไลบรารีของไคลเอ็นต์ในแอปพลิเคชัน

ในโค้ดของแอปพลิเคชัน ให้กำหนดให้ใช้ Earth Engine API ดังนี้

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

การอัปเดตไลบรารีของไคลเอ็นต์

ใช้ npm เพื่ออัปเดตไลบรารีของไคลเอ็นต์เป็นเวอร์ชันล่าสุด จากไดเรกทอรีโปรเจ็กต์ปัจจุบัน ให้ทำดังนี้
npm update @google/earthengine

ดูข้อมูลเพิ่มเติมเกี่ยวกับ การอัปเดตไลบรารีด้วย npm.

การถอนการติดตั้งไลบรารีของไคลเอ็นต์

หากต้องการถอนการติดตั้งโดยใช้ตัวจัดการแพ็กเกจ npm ให้เรียกใช้คำสั่งต่อไปนี้

npm uninstall --save @google/earthengine

คำสั่งนี้จะนำ node_modules/@google/earthengine ออกจากโปรเจ็กต์ปัจจุบัน แต่ จะไม่ส่งผลต่อโปรเจ็กต์อื่นๆ ในไดเรกทอรีอื่นในเครื่องเดียวกัน

สร้างโปรเจ็กต์ Cloud และเปิดใช้งาน Earth Engine API

ทำตาม วิธีการเหล่านี้ เพื่อสร้างโปรเจ็กต์ Cloud และเปิดใช้ Earth Engine API

การตั้งค่าข้อมูลเข้าสู่ระบบสำหรับการตรวจสอบสิทธิ์

Earth Engine API ใช้โปรโตคอล OAuth 2.0 สำหรับ การตรวจสอบสิทธิ์ไคลเอ็นต์ที่ใช้เบราว์เซอร์ เราขอแนะนำให้ใช้บัญชีบริการสำหรับการตรวจสอบสิทธิ์ฝั่งเซิร์ฟเวอร์ใน Node.js เว็บแอปอาจใช้วิธีใดวิธีหนึ่งก็ได้ โดยมีข้อดีและข้อเสียดังที่กล่าวไว้ ด้านล่าง

การตรวจสอบสิทธิ์ฝั่งไคลเอ็นต์ด้วย OAuth

การตรวจสอบสิทธิ์ฝั่งไคลเอ็นต์ในเว็บเบราว์เซอร์จะช่วยให้ผู้ใช้แอปพลิเคชันของคุณเข้าสู่ระบบด้วย บัญชี Google ของตนเองได้ ผู้ใช้เหล่านี้ต้องได้รับอนุญาตให้เข้าถึง Earth Engine อยู่แล้ว และต้องมีสิทธิ์อ่านเนื้อหาที่แอปพลิเคชันของคุณใช้

หลังจากสร้างรหัสไคลเอ็นต์ OAuth 2.0 แล้ว ให้ตรวจสอบสิทธิ์ตามที่แสดงด้านล่าง (แทนที่ my-project ด้วยรหัสโปรเจ็กต์ 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);
});

การตรวจสอบสิทธิ์ฝั่งเซิร์ฟเวอร์ด้วยบัญชีบริการ

การตรวจสอบสิทธิ์ฝั่งเซิร์ฟเวอร์จะจัดเก็บคีย์ส่วนตัวไว้กับแอปพลิเคชัน ซึ่งช่วยให้ แอปพลิเคชันเข้าถึง Earth Engine API ผ่านบัญชีบริการได้ ผู้ใช้แอปพลิเคชัน ไม่จำเป็นต้องมีสิทธิ์เข้าถึง Earth Engine และไม่จำเป็นต้องเข้าสู่ระบบ

ใน Node.js ไลบรารีของไคลเอ็นต์จะให้การตรวจสอบสิทธิ์ฝั่งเซิร์ฟเวอร์เท่านั้น

หลังจาก สร้างบัญชีบริการ ใหม่ แล้ว ให้ใช้คีย์ส่วนตัว JSON เพื่อตรวจสอบสิทธิ์ (แทนที่ my-project ด้วยรหัสโปรเจ็กต์ที่อยู่ในระบบคลาวด์ของ Google)

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

การทดสอบการติดตั้ง

หากต้องการทดสอบว่าได้ตั้งค่าการตรวจสอบสิทธิ์อย่างถูกต้องแล้ว ให้เรียกใช้สคริปต์ต่อไปนี้ (แทนที่ my-project ด้วยรหัสโปรเจ็กต์ที่อยู่ในระบบคลาวด์ของ 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);
});

หากติดตั้งทุกอย่างถูกต้อง ระบบควรพิมพ์ข้อมูลเมตาของรูปภาพ