Google App Engine cho phép bạn tạo và chạy các ứng dụng tuỳ chỉnh của riêng mình trên máy chủ của Google. Các ứng dụng App Engine rất dễ tạo, duy trì và mở rộng quy mô khi nhu cầu về lưu lượng truy cập và lưu trữ dữ liệu của bạn thay đổi. Bạn chỉ cần tải mã nguồn ứng dụng lên là có thể bắt đầu. Nếu bạn mới phát triển cho App Engine, hãy nhớ xem hướng dẫn bắt đầu nhanh về Python hoặc Node.js của App Engine trước khi tiếp tục.
Bạn có thể sử dụng Earth Engine và App Engine cùng nhau để tạo các ứng dụng không gian địa lý có khả năng mở rộng. Thông thường, mã App Engine của bạn sẽ bao gồm Thư viện ứng dụng Python của Earth Engine và đưa ra các yêu cầu cho phần phụ trợ Earth Engine bằng cách sử dụng tài khoản dịch vụ. Điều này rất hữu ích vì cho phép mọi người sử dụng ứng dụng của bạn mà không cần đăng nhập hoặc là người dùng Earth Engine đã đăng ký. Xin lưu ý rằng hạn mức sử dụng Earth Engine tiêu chuẩn sẽ áp dụng cho từng tài khoản dịch vụ.
Một phương pháp phát triển khác là sử dụng xác thực phía máy khách thay vì tài khoản dịch vụ. Với phương pháp này, khách truy cập vào ứng dụng của bạn phải đăng ký Earth Engine và đăng nhập. Lợi ích của phương pháp này là các yêu cầu đến Earth Engine được thực hiện bằng thông tin đăng nhập của người dùng cuối, vì vậy, bạn ít có khả năng đạt đến giới hạn sử dụng. Thách thức là người dùng phải đăng ký Earth Engine và đăng nhập trước khi sử dụng ứng dụng.
Thư mục bản trình diễn Earth Engine App Engine trên GitHub chứa một tập hợp các ví dụ hữu ích về App Engine. Hãy xem trang Ứng dụng mẫu để biết nội dung mô tả ngắn gọn về từng ví dụ. Tài liệu này cung cấp hướng dẫn về cách thiết lập và triển khai các ví dụ hoặc ứng dụng tuỳ chỉnh mà bạn tạo.
Triển khai ứng dụng App Engine bằng Earth Engine
Hướng dẫn sau đây giải thích cách triển khai các ứng dụng minh hoạ. Hướng dẫn về Python dành cho Mac OS và Linux. Nếu bạn đang sử dụng Python trên Windows, hãy thử cách này.
Bật Earth Engine API trên dự án trên đám mây của Google Cloud
Tạo hoặc chọn một dự án trên đám mây của Google Cloud rồi bật Earth Engine API theo hướng dẫn này.
Thiết lập thông tin đăng nhập
Tài khoản dịch vụ
Bạn có thể dùng tài khoản dịch vụ để uỷ quyền các yêu cầu gửi đến Earth Engine thay cho bất kỳ ai đang dùng ứng dụng của bạn. Tệp config.py chứa mã xác thực bằng địa chỉ email của tài khoản dịch vụ và tệp khoá riêng tư. Để thiết lập quy trình xác thực bằng tài khoản dịch vụ, hãy làm theo các hướng dẫn này để tạo tài khoản dịch vụ và tệp khoá riêng tư. Đặt tên cho tệp khoá là .private-key.json rồi di chuyển tệp đó vào thư mục dự án của bạn.
Python
Trước tiên, hãy thiết lập Earth Engine Python API (nếu bạn chưa thực hiện). Kiểm thử tài khoản dịch vụ theo hướng dẫn này.
Nếu kiểm thử thành công, hãy cập nhật config.py (hoặc một tệp tương đương trong mã nguồn của bạn) bằng địa chỉ email tài khoản dịch vụ. (Đường dẫn đến tệp khoá không được thay đổi vì tệp này nằm trong thư mục dự án của bạn).
Node.js
Cài đặt các phần phụ thuộc của dự án bằng cách chạy npm install. Earth Engine Node.js API và mọi phần phụ thuộc khác sẽ được sao chép vào thư mục ./node_modules trong thư mục dự án của bạn. Nếu quá trình cài đặt không thành công, hãy kiểm tra để đảm bảo bạn đã cài đặt phiên bản Node.js gần đây. Xác thực và khởi chạy thư viện, thay thế my-project bằng mã dự án trên đám mây của bạn:
const ee = require('@google/earthengine'); ee.data.authenticateViaPrivateKey('.private-key.json'); ee.initialize(null, null, null, null, null, 'my-project');
Mã ứng dụng OAuth 2.0
Nếu muốn người dùng tự xác thực (thay vì dùng tài khoản dịch vụ), bạn cần thiết lập một mã ứng dụng OAuth từ Dự án trên đám mây. Cách thực hiện như sau:
- Thiết lập mã nhận dạng ứng dụng theo hướng dẫn này.
- Cập nhật
static/script.js(hoặc một tệp tương đương trong mã nguồn của bạn) để sử dụng mã ứng dụng khách. - Đảm bảo
ee_api_js.jscó trong thư mục/static/(hoặc tương đương). Bạn có thể tảiee_api_js.jsxuống trực tiếp từ GitHub, cài đặtee_api_js.jstừ npm hoặc nếu đã sao chép toàn bộ kho lưu trữ EE API, hãy sao chépee_api_js.jstừearthengine-api/javascript/buildtrên hệ thống tệp cục bộ.
Thiết lập môi trường phát triển cục bộ
Python
Làm theo hướng dẫn trong từng thư mục ví dụ trên GitHub để tải xuống và tạo dự án. Nếu có tệp build.sh, hãy kích hoạt tệp đó từ thư mục gốc của ứng dụng bằng lệnh:
./build.sh
Tập lệnh thiết lập sẽ tải các phần phụ thuộc xuống và cài đặt các công cụ dòng lệnh của Google, nếu chúng chưa có trên hệ thống của bạn. Earth Engine Python API và các phần phụ thuộc của API này sẽ được sao chép vào thư mục ./lib trong thư mục dự án của bạn.
Xác minh rằng các công cụ dòng lệnh App Engine có sẵn bằng cách chạy:
dev_appserver.py
Nếu không tìm thấy lệnh, hãy thử tải xuống và cài đặt Google App Engine SDK cho Python theo cách thủ công. Nếu có lệnh, thì lệnh đó sẽ không thực hiện được và trả về lỗi "error: too few arguments" (lỗi: quá ít đối số).
Node.js
Không cần thiết lập.
Chạy cục bộ
Sau khi đăng ký tài khoản dịch vụ để truy cập vào Earth Engine, bạn có thể dùng tài khoản này để xác thực (xem config.py) khi kiểm thử các ví dụ. Trước tiên, hãy thử kiểm thử các ví dụ cục bộ bằng cách chuyển đến thư mục dự án rồi chạy:
Python
dev_appserver.py .
Node.js
npm install npm start
Trỏ trình duyệt đến http://localhost:8080 để xem ứng dụng đang chạy trên một máy chủ cục bộ. Mọi thay đổi bạn thực hiện (và lưu) sẽ tự động được chọn khi bạn làm mới trang.