Google App Engine به شما امکان میدهد برنامههای سفارشی خود را روی سرورهای گوگل بسازید و اجرا کنید. ایجاد، نگهداری و مقیاسپذیری برنامههای App Engine با توجه به تغییر نیازهای ترافیک و ذخیرهسازی دادههای شما آسان است. شما به سادگی کد منبع برنامه خود را آپلود میکنید و آماده استفاده است. اگر در توسعه App Engine تازهکار هستید، قبل از ادامه، حتماً راهنمای سریع App Engine Python یا 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 با Earth Engine
دستورالعملهای زیر نحوهی استقرار برنامههای آزمایشی را توضیح میدهند. دستورالعملهای پایتون برای سیستمعاملهای مک و لینوکس در نظر گرفته شدهاند. اگر از پایتون در ویندوز استفاده میکنید، این را امتحان کنید .
API موتور زمین را در پروژه Google Cloud خود فعال کنید
یک پروژه Google Cloud ایجاد یا انتخاب کنید و API موتور زمین را طبق این دستورالعملها فعال کنید.
تنظیم اعتبارنامهها
حساب کاربری خدمات
یک حساب کاربری سرویس میتواند برای تأیید درخواستها به Earth Engine از طرف هر کسی که از برنامه شما استفاده میکند، استفاده شود. فایل config.py شامل کد احراز هویت با استفاده از آدرس ایمیل حساب کاربری سرویس و یک فایل کلید خصوصی است. برای تنظیم احراز هویت با یک حساب کاربری سرویس، این دستورالعملها را برای ایجاد حساب کاربری سرویس و فایل کلید خصوصی دنبال کنید. نام فایل کلید را .private-key.json قرار دهید و آن را به دایرکتوری پروژه خود منتقل کنید.
پایتون
اگر هنوز این کار را نکردهاید، ابتدا API پایتون Earth Engine را راهاندازی کنید . حساب کاربری سرویس را طبق این دستورالعملها آزمایش کنید.
اگر آزمایش موفقیتآمیز بود، config.py (یا فایل معادل آن در کد منبع) را با آدرس ایمیل حساب سرویس خود بهروزرسانی کنید. (مسیر فایل کلید نباید تغییر کند زیرا در دایرکتوری پروژه شما قرار دارد).
نود جی اس
با اجرای دستور npm install وابستگیهای پروژه را نصب کنید. API مربوط به Node.js مربوط به Earth Engine و سایر وابستگیها در پوشه ./node_modules در دایرکتوری پروژه شما کپی میشوند. در صورت عدم موفقیت در نصب، بررسی کنید که نسخه جدیدی از Node.js نصب شده باشد . کتابخانه را تأیید اعتبار کرده و مقداردهی اولیه کنید و my-project را با شناسه پروژه Google Cloud خود جایگزین کنید:
const ee = require('@google/earthengine'); ee.data.authenticateViaPrivateKey('.private-key.json'); ee.initialize(null, null, null, null, null, 'my-project');
شناسه کلاینت OAuth 2.0
اگر میخواهید کاربران خودشان احراز هویت شوند (به جای استفاده از یک حساب کاربری سرویس)، باید یک شناسه کلاینت OAuth از پروژه ابری خود تنظیم کنید. برای انجام این کار:
- طبق این دستورالعملها، یک شناسه کلاینت تنظیم کنید.
-
static/script.js(یا فایل معادل آن در کد منبع خود) را برای استفاده از شناسه کلاینت خود بهروزرسانی کنید. - مطمئن شوید که
ee_api_js.jsدر دایرکتوری/static/(یا معادل آن) موجود است. میتوانید آن را مستقیماً از GitHub دانلود کنید، آن را از npm نصب کنید ، یا اگر قبلاً کل مخزن EE API را کلون کردهاید، آن را ازearthengine-api/javascript/buildدر سیستم فایل محلی خود کپی کنید.
محیط توسعه محلی را تنظیم کنید
پایتون
برای دانلود و ساخت پروژه، دستورالعملهای موجود در هر دایرکتوری مثال در گیتهاب را دنبال کنید. اگر فایل build.sh وجود دارد، آن را از پوشه ریشه برنامه خود با دستور زیر اجرا کنید:
./build.sh
اسکریپت راهاندازی، وابستگیها را دانلود کرده و ابزارهای خط فرمان گوگل را نصب میکند، اگر از قبل روی سیستم شما وجود نداشته باشند. API پایتون Earth Engine و وابستگیهای آن در پوشه ./lib در دایرکتوری پروژه شما کپی میشوند.
با اجرای دستور زیر، تأیید کنید که ابزارهای خط فرمان App Engine در دسترس هستند:
dev_appserver.py
اگر دستور پیدا نشد، سعی کنید SDK مربوط به Google App Engine برای پایتون را به صورت دستی دانلود و نصب کنید. اگر دستور در دسترس باشد، باید با خطای "error: too few arguments" مواجه شود.
نود جی اس
نیازی به تنظیم نیست.
اجرا به صورت محلی
پس از ثبت حساب کاربری سرویس شما برای دسترسی به Earth Engine ، میتوانید از آن برای احراز هویت استفاده کنید (به config.py مراجعه کنید) هنگام آزمایش مثالها. ابتدا با رفتن به دایرکتوری پروژه خود و اجرای دستور زیر، مثالها را به صورت محلی آزمایش کنید:
پایتون
dev_appserver.py .
نود جی اس
npm install npm start
برای مشاهدهی اجرای برنامه روی یک سرور محلی، مرورگر خود را به آدرس http://localhost:8080 هدایت کنید. هر تغییری که ایجاد کنید (و ذخیره کنید) به طور خودکار هنگام رفرش صفحه اعمال میشود.