ساخت آزمایشی

ساخت آزمایشی


یکپارچگی با Arc Gis Online-موسسه چشم انداز-آموزش کاربردی GIS و RS

مقدمه

ArcGIS Online وب سایتی برای کار با نقشه‌ها و دیگر اطلاعات جغرافیایی است که شامل برنامه‌هایی برای ایجاد و به اشتراک گذاری نقشه‌ها است. در این سایت نقشه‌های مبنا، داده‌ها، برنامه‌ها و ابزارهای سودمندی برای استفاده وجود دارند. هم‌چنین می‌توان محتویات ArcGIS Online را که شامل نقشه، داده و دیگر ابزارها است با استفاده از ArcGIS Server API for JavaScript به برنامه ضمیمه کرد.

سال 2012 شروع رسمی Arc Gis Online شرکت Esri بود. Arc Gis Online رویکرد جدیدی برای انتشار، دستیابی و خرید سرویس‌های ArcGis است ومدیریت و به اشتراک گذاری داده‌های جغرافیایی را به‌طور قابل توجهی آسان‌تر کرده است. توسعه دهندگان اپلیکیشن‌های موبایل GIS باید Arc Gis Online و مفاهیم و عملکردهای این وبسایت مانند احراز هویت، کاربران، گروه‌ها و نقشه‌های مبنا را شناخته و استفاده کنند. این مفاهیم را در این بخش به طور کامل توضیح داده و یک اپلیکیشن موبایل با Arc Gis Online می‌سازیم.

مطالب تحت پوشش این بخش عبارتند از:

1- مبانی Arc Gis Online

2- ArcGIS Server  و  ArcGIS Online

3- ساخت یک اپلیکیشن موبایل با Arc Gis Online

معرفی

تکنولوژی موبایل تاثیر عمیقی بر روی علم GIS داشته است. Arc Gis Online اولین قدم شرکت Esri در سرویس‌های cloud-based می‌باشد. سرویس‌های بر مبنای cloud-based، توانایی مدیریت و پشتیبانی از حجم بالای منابع داده را دارند.  Cloud در این اصطلاح نشان‌دهنده‌ی یکپارچگی اطلاعات و منابع داده است.

Arc Gis Online داده‌ها‌ی عمومی و خصوصی منابع مختلف را به سادگی منتشر می‌کند و این یک پیشرفت بزرگ است. از دیگر مزایای Arc Gis Online، ایجاد سرویس‌های ArcGIS کاربردی و قابل دسترس است. در واقع Arc Gis Online که یک سرویس cloud-based است، آینده‌ی ArcGis را نشان می‌دهد. در نمودار زیرArc Gis Online نقطه‌ی دستیابی اپلیکیشن‌های وبGIS و اپلیکیشن‌های موبایلGIS به نقشه‌ها، لایه‌های عارضه و سرویس‌های GIS است.

ArcGIS Server و ArcGIS Online

در سال‌های اخیر، ArcGIS Server هسته‌ی محصولات شرکت Esri بوده است که سرویس‌های GIS را برای سازمان‌های کل دنیا فراهم کرده است. شرکت Esri در مورد ArcGIS Server می‌گوید:” توانایی انتشار و به اشتراک گذاری منابع GIS مانند (نقشه‌ها، مکان‌یاب‌ها و …) را همانند سرویس‌های وب دارد. در نتیجه منابع GIS در محیط وب و اینترانت قابل دسترسی و استفاده هستند و با توجه به نیازهای سازمانتان قابل نصب و پیکربندی است”.

در سال 2012، ArcGIS Online شروع به کار کرد. اصطلاحاً به ArcGIS Online، cloud-based GIS نیز می‌گویند. “نرم افزاری مانند یک سرویس” معادل خوبی برای ArcGIS Online است. که به اختصار آن را (software as a service-(SaaS می‌گویند.

Esri ادامه می‌دهد: ” ArcGIS Online مولفه‌ی آنلاین ArcGIS و سیستم مدیریت محتوا برای کار بر روی اطلاعات جغرافیایی است و برای ایجاد نقشه‌های وب، یک ساختار قابل تنظیم و قابل پیکربندی و ایمن را فراهم می‌کند. داده‌ها را وبی می‌کند و داده، نقشه و اپلیکیشن‌ها را در محیط وب به اشتراک می‌گذارد”.

مدیران می‌توانند از طریق یک رابط ساده، داده‌های با فرمت مختلف را در ArcGIS Online منتشر و توزیع کنند و داده‌ها را جهت استفاده‌ی عمومی یا خصوصی آماده کنند.

ArcGIS Online در قلب تمام محصولات Esri مانند پلتفرم ArcGis وجود دارد. پلتفرم ArcGis دو مدل را برای گسترش وبGIS ارائه می‌کند. مدل اول،ArcGIS Online مبتنی بر سرویس cloud-based است. یک سازمان برای نگهداری و مدیریت این سرویس به هیچ ساختار سخت افزاری نیاز ندارد زیرا شرکت Esri وظیفه نگهداری و مدیریت ArcGIS Online را بر عهده دارد. مدل دیگر به نام on-premises بر روی منطق و قضیه استوار است.

Esri در مورد مدل on-premises می‌گوید:” ArcGIS Portalیک مدل on-premises است.  ArcGIS Portalبا ArcGIS Server گسترش یافته است. هم چنین به صورت اختیاری با  ArcGIS Dataنیز قابل گسترش است”.

در مدل on-premises سازمان با استفاده از پلتفرم ArcGIS ساختار سخت افزاری خود را مدیریت می‌کند.

مبانی ArcGIS Online

ابتدا نحوه‌ی دسترسی به ArcGIS Online را توضیح می‌دهیم.

شرکت Esri می‌گوید:” اگر عضوی از سازمان ArcGIS Online نیستید، می‌توانید با ایجاد یک حساب عمومی به ArcGIS Online دسترسی داشته باشید. حساب عمومی برای افرادی است که محتویات را ایجاد و به اشتراک می‌گذارند ولی محدودیت استفاده دارند. طوریکه در یک ماه 50 اعتبار دارند.

اگر یک حساب Esri  دارید، به طور خودکار یک حساب عمومی محسوب می‌شود و می‌توانید با این حساب به ArcGIS Online وارد شوید”.

اطلاعات بیشتر در مورد حساب توسعه دهنده‌ی ArcGIS Online در لینک زیر قرار دارد.

https://developers.arcgis.com/en/

ArcGIS Online سه مفهوم کلیدی دارد.

  • کاربر نام گذاری شده و گروه‌ها
  • نقشه‌های وب
  • احراز هویت OAuth

مفهوم کاربر نام گذاری شده و گروه‌ها مهم است.

در واقع کاربر نام‌گذاری شده شخصی است که مجوز استفاده از نرم افزار را دارد. شما برای استفاده از ArcGIS Online باید یک کاربر نام‌گذاری شده باشید. اما بیشترین اهمیت، داشتن یک شناسه منحصربفرد (ID) است که موجب دسترسی به همه‌ی پلتفرم ArcGIS می‌شود. اطلاعات بیشتر در مورد کاربر نام گذاری شده را در لینک زیر ببینید:

https://www.esri.com/products/technology-topics/named-user

مدیران ArcGIS Online، عملیات کاربران نام گذاری شده مانند دسترسی به داده، گروه‌ها و موارد مشابه را کنترل می‌کنند.

نقشه‌های وب

نقشه‌های وب، قلب  ArcGIS Onlineو ترکیبی از یک نقشه مبنا با لایه‌های عارضه هستند که روی نقشه قرار می‌گیرند.

Mashup، برنامه‌ی تحت وبی است که از ترکیب داده‌ها و رابط­ه ای برنامه نویسی­ مختلف (مانند JavaScript API) تشکیل شده است.

نقشه‌های وب می‌توانند نتیجه‌ی Mashup‌های نقشه‌ای باشند. داده‌های جغرافیایی درArcGIS Online یا ArcGIS Server منتشر می‌شوند و نقشه‌های وبی، ترکیب داده‌های جغرافیایی منتشر شده هستند. داده‌های جغرافیایی منتشر شده شامل لایه‌های عارضه، نقشه، فایل‌های comma-separated values (CSV)، فایل‌های  GeoJSON، shapefileها، مجموعه عوارض، پروژه‌های Arcmap با پسوند mxd و ژئودیتابیس‌ها هستند.

ArcGIS Online مجموعه قدرتمندی از نقشه‌های مبنای رایگان را فراهم کرده است. مدیران ArcGIS Online و انتشاردهندگان می‌توانند موارد: تولید نقشه‌های وب، انتخاب نقشه‌ی مبنا، اضافه کردن لایه‌های مناسب و تنظیمات محدوده جغرافیایی نقشه را انجام دهند.

هر نقشه‌ی وب یک شناسه منحصر‌بفرد (ID) دارد. اطلاعات بیشتر در مورد نقشه‌های وب را در لینک زیر خواهید دید:

https://developers.arcgis.com/javascript/jshelp/intro_webmap.html

احراز هویت OAuth

قسمت کلیدی که در بخش بعدی آن را ایجاد می‌کنیم احراز هویت OAuth است.

در اسناد Esri آمده است:” OAuth 2.0استاندارد احراز هویت پروتکل HTTP است. برنامه‌ها با استفاده از احراز هویت می‌توانند از منابع سرور استفاده کنند. کاربر اپلیکیشن ، بدون نام کاربری و رمز عبور و با استفاده از مکانیسم احراز هویت، وارد اپلیکیشن می‌شود و به تمام منابع آن دسترسی دارد. به جای این که کاربر در هر بار استفاده از اپلیکیشن مجبور به وارد کردن نام کاربری و رمز عبور نباشد، به سرور راه دوری مانند ArcGIS Online وارد می‌شود و پس از تأئید احراز هویت وی، یک علامت دسترسی فرستاده خواهد شد تا کاربر اپلیکیشن بتواند دسترسی محافظت شده‌ای بر روی منابع داشته باشد. این کاربر، اصطلاحاً کاربر نام گذاری شده نامیده می‌شود.

ایجاد احراز هویت بر روی اپلیکیشن موضوع مهمی است و دسترسی به داده‌های اپلیکیشن را کنترل می‌کند. دسترسی به ArcGIS Online توسط احراز هویت OAuth انجام می‌شود.

Esri می‌گوید: ” سیستم OAuth کاربران را روی ArcGIS portal احراز هویت می‌کند. کاربر بدون نیاز به تأئید شدن مجوزش در اپلیکیشن، به منابع و داده‌های اپلیکیشن دسترسی امنی دارد. کاربر احراز هویت شده می‌تواند انواع مختلف 1- اپلیکیشن‌های مرورگر وب مانند 1- وب سایت‌ها 2- اپلیکیشن‌های وب سرور 3- اپلیکیشن‌های دستگاه‌های موبایل 4- اپلیکیشن‌های ویندوزی را اجرا کند. اپلیکیشن وب، کاربر را به صفحه احراز هویت هدایت می‌کند و هنگام اجرای اپلیکیشن وب در مرورگر، مرورگر احراز هویت را آزمایش و بررسی می‌کند. در نتیجه‌ی اجرای کد احراز هویت و تأئید حساب کاربری، ورود موفقیت آمیز انجام می‌شود و اپلیکیشن یک رشته حروف منحصر به فرد دریافت می‌کند”.

یک بار که احراز هویت انجام شود، کاربر نام‌گذاری شده می‌تواند به منابع مختلف پلتفرم ArcGIS، نقشه‌های مبنا و سرویس‌های ArcGIS دسترسی داشته باشد.

اطلاعات بیشتر در مورد احراز هویت OAuth را در لینک زیر ببینید:

https://developers.arcgis.com/authentication/

حال مفاهیم تئوری بالا را کدنویسی می‌کنیم:

برگرفته از کتاب تولید وب اپلیکیشن های موبایل با ArcGIS

نویسنده: دکتر محمد بافقی زاده

نشر: انتشارات اکادمیک

وب جی آی اس (WebGIS)


Fatal error: Uncaught TypeError: ltrim(): Argument #1 ($string) must be of type string, WP_Error given in /home/gisland1/public_html/wp-includes/formatting.php:4482 Stack trace: #0 /home/gisland1/public_html/wp-includes/formatting.php(4482): ltrim(Object(WP_Error)) #1 /home/gisland1/public_html/wp-content/themes/xtra/functions.php(3349): esc_url(Object(WP_Error)) #2 /home/gisland1/public_html/wp-content/themes/xtra/single.php(19): Codevz_Core_Theme::generate_page('single') #3 /home/gisland1/public_html/wp-includes/template-loader.php(106): include('/home/gisland1/...') #4 /home/gisland1/public_html/wp-blog-header.php(19): require_once('/home/gisland1/...') #5 /home/gisland1/public_html/index.php(17): require('/home/gisland1/...') #6 {main} thrown in /home/gisland1/public_html/wp-includes/formatting.php on line 4482