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. Bạn có thể dễ dàng tạo, duy trì và mở rộng quy mô các ứng dụng App Engine khi nhu cầu lưu trữ dữ liệu và lưu lượng truy cập 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 sử dụng. Nếu bạn mới bắt đầu phát triển cho App Engine, hãy nhớ xem hướng dẫn 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 để xây dựng các ứng dụng không gian địa lý có thể mở rộng. Thông thường, mã App Engine của bạn sẽ bao gồm thư viện ứng dụng Earth Engine Python và đưa ra yêu cầu tới phần phụ trợ Earth Engine bằng tài khoản dịch vụ. Điều này có lợi 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 giới hạn sử dụng tiêu chuẩn của Earth Engine á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 quy trình 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 gửi đến Earth Engine được thực hiện bằng thông tin xác thực 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 minh hoạ Earth Engine App Engine trên GitHub chứa một bộ 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 ứ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 API Earth Engine trên dự án Google Cloud
Tạo hoặc chọn một dự án Google Cloud rồi bật API Earth Engine theo hướng dẫn này.
Thiết lập thông tin xác thực
Tài khoản dịch vụ
Bạn có thể sử dụng tài khoản dịch vụ để thay mặt cho bất kỳ ai đang sử dụng ứng dụng của bạn uỷ quyền các yêu cầu gửi đến Earth Engine. 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 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 tệp khoá là .private-key.json
rồi di chuyển tệp đó vào thư mục dự án.
Python
Trước tiên, hãy thiết lập API Earth Engine Python 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 tệp tương đương trong mã nguồn) bằng địa chỉ email của 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
. API Earth Engine Node.js 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 không cài đặt được, hãy kiểm tra để đảm bảo rằng bạn đã cài đặt phiên bản mới nhất của Node.js.
const ee = require('@google/earthengine'); ee.data.authenticateViaPrivateKey('.private-key.json'); ee.initialize();
Mã ứng dụng khách OAuth 2.0
Nếu muốn người dùng xác thực bằng chính họ (thay vì sử dụng tài khoản dịch vụ), bạn cần thiết lập mã ứng dụng khách OAuth từ Dự án trên Google Cloud. Cách thực hiện như sau:
- Thiết lập mã ứng dụng theo hướng dẫn này.
- Cập nhật
static/script.js
(hoặc tệp tương đương trong mã nguồn) để sử dụng mã ứng dụng. - Đảm bảo
ee_api_js.js
có trong thư mục/static/
(hoặc tương đương). Bạn có thể tải xuống trực tiếp từ GitHub, cài đặt từ npm hoặc nếu đã sao chép toàn bộ kho lưu trữ API EE, hãy sao chép kho lưu trữ đó từearthengine-api/javascript/build
trê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 mỗi thư mục mẫu trên GitHub để tải xuống và tạo dự án. Nếu có tệp build.sh
, hãy chạy 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 các công cụ này chưa có trên hệ thống của bạn. API Earth Engine Python 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 bạn có thể sử dụng các công cụ dòng lệnh của App Engine bằng cách chạy:
dev_appserver.py
Nếu không tìm thấy lệnh này, hãy thử tải xuống và cài đặt SDK Google App Engine cho Python theo cách thủ công. Nếu có lệnh này, lệnh sẽ không thành công với thông báo "lỗi: quá ít đối số".
Node.js
Không cần thiết lập.
Chạy cục bộ
Sau khi tài khoản dịch vụ của bạn được đăng ký truy cập Earth Engine, bạn có thể sử dụng tài khoản đó để 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ụ trên máy bằng cách truy cập vào thư mục dự án và chạy:
Python
dev_appserver.py .
Node.js
npm install npm start
Chuyển hướng trình duyệt của bạn đến http://localhost:8080 để xem ứng dụng đang chạy trên máy chủ cục bộ. Mọi thay đổi bạn thực hiện (và lưu) sẽ được tự động nhận ra khi bạn làm mới trang.