App Engine & نمای کلی موتور زمین

Google App Engine به شما امکان می دهد برنامه های کاربردی سفارشی خود را در سرورهای Google بسازید و اجرا کنید. برنامه های App Engine به راحتی ایجاد، نگهداری و مقیاس می شوند زیرا نیازهای ترافیک و ذخیره داده شما تغییر می کند. شما به سادگی کد منبع برنامه خود را آپلود می کنید و آن آماده است. اگر به تازگی در حال توسعه برای App Engine هستید، قبل از ادامه، حتماً App Engine Python یا Quickstart Node.js را بررسی کنید.

Earth Engine و App Engine را می توان با هم برای ساخت برنامه های کاربردی جغرافیایی مقیاس پذیر استفاده کرد. به طور معمول، کد App Engine شما شامل کتابخانه سرویس گیرنده Earth Engine Python است و با استفاده از یک حساب سرویس ، درخواست‌هایی را به Backend Earth Engine ارسال می‌کند. این مزیت است زیرا به هر کسی اجازه می‌دهد بدون ورود به سیستم یا کاربر ثبت‌شده Earth Engine از برنامه شما استفاده کند. توجه داشته باشید که محدودیت‌های استاندارد استفاده از Earth Engine برای هر حساب سرویس اعمال می‌شود.

یکی دیگر از رویکردهای توسعه، استفاده از احراز هویت سمت مشتری به جای حساب سرویس است. با این رویکرد، بازدیدکنندگان برنامه شما باید برای Earth Engine ثبت نام کرده و وارد سیستم شوند. مزیت این روش این است که درخواست‌ها به Earth Engine با استفاده از اعتبار کاربر نهایی انجام می‌شود، بنابراین احتمال اینکه محدودیت‌های استفاده را کاهش دهید کمتر است. چالش این است که کاربران شما باید برای Earth Engine ثبت نام کنند و قبل از استفاده از برنامه وارد سیستم شوند.

دایرکتوری دموهای موتور برنامه Earth Engine در GitHub شامل مجموعه ای از نمونه های کاربردی App Engine است. برای توضیح مختصری از هر نمونه به صفحه برنامه های مثال مراجعه کنید. این سند دستورالعمل‌هایی را برای نحوه راه‌اندازی و استقرار نمونه‌ها یا برنامه‌های سفارشی که ایجاد می‌کنید ارائه می‌دهد.

استقرار برنامه های App Engine با Earth Engine

دستورالعمل های زیر نحوه استقرار برنامه های آزمایشی را توضیح می دهد. دستورالعمل های پایتون برای سیستم عامل مک و لینوکس در نظر گرفته شده است. اگر از پایتون در ویندوز استفاده می کنید، این را امتحان کنید .

Earth Engine API را در پروژه Google Cloud خود فعال کنید

یک پروژه Google Cloud ایجاد یا انتخاب کنید و Earth Engine API را طبق این دستورالعمل‌ها فعال کنید.

اعتبارنامه را تنظیم کنید

حساب خدمات

ممکن است از یک حساب سرویس برای تأیید درخواست‌ها به Earth Engine از طرف هر کسی که از برنامه شما استفاده می‌کند استفاده شود. فایل config.py حاوی کد احراز هویت با استفاده از آدرس ایمیل حساب سرویس و یک فایل کلید خصوصی است. برای تنظیم احراز هویت با یک حساب سرویس، این دستورالعمل ها را دنبال کنید تا حساب سرویس و فایل کلید خصوصی ایجاد کنید. نام فایل کلید را .private-key.json بگذارید و آن را به فهرست پروژه خود منتقل کنید.

پایتون

اگر قبلاً این کار را نکرده‌اید، ابتدا Earth Engine Python API را راه‌اندازی کنید . حساب سرویس را مطابق این دستورالعمل ها آزمایش کنید.

اگر آزمایش موفقیت آمیز بود، config.py (یا یک فایل معادل در کد منبع خود) را با آدرس ایمیل حساب سرویس خود به روز کنید. (مسیر فایل کلید نباید تغییر کند زیرا در فهرست پروژه شما قرار دارد).

Node.js

با اجرای npm install وابستگی های پروژه را نصب کنید. Earth Engine Node.js API و هر وابستگی دیگر در پوشه ./node_modules در فهرست پروژه شما کپی می شود. اگر نصب انجام نشد، بررسی کنید که نسخه اخیر Node.js نصب شده باشد .

const ee = require('@google/earthengine');
ee.data.authenticateViaPrivateKey('.private-key.json');
ee.initialize();

شناسه مشتری OAuth 2.0

اگر می‌خواهید کاربران به‌عنوان خودشان احراز هویت کنند (به‌جای استفاده از حساب سرویس)، باید یک شناسه مشتری OAuth را از پروژه Cloud خود تنظیم کنید. برای انجام آن:

  1. طبق این دستورالعمل ها یک شناسه مشتری تنظیم کنید.
  2. static/script.js (یا یک فایل معادل در کد منبع خود) را برای استفاده از شناسه مشتری خود به روز کنید.
  3. اطمینان حاصل کنید که ee_api_js.js در فهرست /static/ (یا معادل آن) موجود است. می‌توانید آن را مستقیماً از GitHub دانلود کنید، آن را از npm نصب کنید ، یا اگر قبلاً کل مخزن EE API را شبیه‌سازی کرده‌اید، آن را از earthengine-api/javascript/build در سیستم فایل محلی خود کپی کنید.

محیط توسعه محلی را تنظیم کنید

پایتون

برای دانلود و ساخت پروژه، دستورالعمل های موجود در هر دایرکتوری نمونه در GitHub را دنبال کنید. اگر فایل build.sh وجود دارد، آن را از پوشه ریشه برنامه خود با دستور زیر اجرا کنید:

./build.sh

اسکریپت راه‌اندازی وابستگی‌ها را دانلود می‌کند و ابزارهای خط فرمان Google را نصب می‌کند، اگر از قبل در سیستم شما وجود نداشته باشند. Earth Engine Python API و وابستگی های آن در پوشه ./lib در فهرست پروژه شما کپی می شود.

بررسی کنید که ابزارهای خط فرمان App Engine با اجرای:

dev_appserver.py

اگر دستور پیدا نشد، سعی کنید به صورت دستی Google App Engine SDK را برای پایتون دانلود و نصب کنید. اگر دستور در دسترس باشد، باید با "خطا: خیلی کم آرگومان" شکست بخورد.

Node.js

بدون نیاز به راه اندازی

به صورت محلی اجرا کنید

هنگامی که حساب سرویس شما برای دسترسی به Earth Engine ثبت شد، می توانید از آن برای احراز هویت (به config.py مراجعه کنید) هنگام آزمایش نمونه ها استفاده کنید. ابتدا نمونه‌ها را به صورت محلی با رفتن به فهرست پروژه خود و اجرای زیر امتحان کنید:

پایتون
dev_appserver.py .
Node.js
npm install
npm start

مرورگر خود را به http://localhost:8080 ببرید تا برنامه در حال اجرا بر روی یک سرور محلی را ببینید. هر تغییری که ایجاد می‌کنید (و ذخیره می‌کنید) به‌طور خودکار هنگام بازخوانی صفحه دریافت می‌شود.