واجهة برمجة تطبيقات تحديد الموقع الجغرافي W3C
واجهة برمجة تطبيقات تحديد الموقع الجغرافي W3C هي مبادرة من اتحاد شبكة الويب العالمية (W3C) لتوحيد واجهة استرجاع معلومات الموقع الجغرافي لجهاز المستخدم. [ 3 ] تُعرّف هذه الواجهة مجموعة من الكائنات المتوافقة مع معيار ECMAScript ، والتي تُنفّذ في تطبيق المستخدم لتحديد موقع الجهاز من خلال الرجوع إلى خوادم معلومات الموقع ، وهي خوادم شفافة لواجهة برمجة التطبيقات (API). تشمل المصادر الأكثر شيوعًا لمعلومات الموقع عنوان IP ، وشبكات Wi-Fi و Bluetooth المتاحة ، وتقنية تحديد الهوية بموجات الراديو (RFID)، وموقع اتصال Wi-Fi، أو نظام تحديد المواقع العالمي (GPS) الخاص بالجهاز، ومعرفات خلايا GSM / CDMA . يتم إرجاع الموقع بدقة معينة بناءً على أفضل مصدر معلومات موقع متاح.
النشر في متصفحات الويب
يمكن لصفحات الويب استخدام واجهة برمجة تطبيقات تحديد الموقع الجغرافي مباشرةً إذا كان متصفح الويب يدعمها. تاريخيًا، كان بإمكان بعض المتصفحات الحصول على الدعم عبر إضافة Google Gears ، ولكن تم إيقاف هذه الإضافة في عام 2010، وتوقفت واجهة برمجة التطبيقات من جانب الخادم التي كانت تعتمد عليها عن الاستجابة في عام 2012. [ 4 ] [ 5 ]
تُعدّ واجهة برمجة تطبيقات تحديد الموقع الجغرافي (Geolocation API) مثالية لتطبيقات الويب على الأجهزة المحمولة كالهواتف الذكية . على أجهزة الكمبيوتر المكتبية، تعمل واجهة برمجة تطبيقات تحديد الموقع الجغرافي W3C في متصفحات Firefox منذ الإصدار 3.5، و Google Chrome ، [ 6 ] وOpera 10.6، [ 7 ] و Internet Explorer 9.0، [ 8 ] وSafari 5. أما على الأجهزة المحمولة، فهي تعمل على أنظمة Android (الإصدار 2.0 وما بعده)، و iOS ، و Windows Phone ، و Maemo . كما يدعم متصفح Opera Mobile 10.1 واجهة برمجة تطبيقات تحديد الموقع الجغرافي W3C، وهو متوفر لأجهزة Android و Symbian (الجيلين 3 و5 من معالجات S60) منذ 24 نوفمبر 2010. [ 9 ] في البداية، كانت المتصفحات تسمح بالوصول إلى واجهة برمجة التطبيقات في سياقات غير آمنة، ولكن في سياق السياقات الآمنة، [ 10 ] تتطلب المتصفحات، مثل Chrome، [ 11 ] الآن اتصالاً آمناً بشكل عام.
وفرت خدمة Google Gears دعم تحديد الموقع الجغرافي للمتصفحات القديمة وغير المتوافقة، بما في ذلك Internet Explorer 7.0 والإصدارات الأحدث كملحق Gears، وGoogle Chrome الذي كان يدعم Gears بشكل أصلي. كما دعمت الخدمة تحديد الموقع الجغرافي على الأجهزة المحمولة كملحق لمتصفح Android (قبل الإصدار 2.0) و Opera Mobile لنظام Windows Mobile . مع ذلك، فإن واجهة برمجة تطبيقات Google Gears لتحديد الموقع الجغرافي غير متوافقة مع واجهة برمجة تطبيقات W3C لتحديد الموقع الجغرافي، ولم تعد مدعومة.
تطبيق
على الرغم من عدم تحديد آلية التنفيذ، إلا أن واجهة برمجة تطبيقات تحديد الموقع الجغرافي W3C مبنية على تقنيات موجودة، وتتأثر بشكل كبير بواجهة برمجة تطبيقات تحديد الموقع الجغرافي Google Gears. على سبيل المثال: يستخدم تطبيق تحديد الموقع الجغرافي في متصفح Firefox [ 12 ] موفر موقع الشبكة من Google. [ 5 ] تعمل واجهة برمجة تطبيقات تحديد الموقع الجغرافي Google Gears عن طريق إرسال مجموعة من المعلمات التي قد تُشير إلى الموقع الفعلي للمستخدم إلى خادم موفر موقع الشبكة، وهو الخادم الذي توفره Google افتراضيًا (code.l.google.com). [ 13 ] تتضمن بعض هذه المعلمات قوائم بأبراج الاتصالات الخلوية وشبكات Wi-Fi التي تم رصدها، مع قياس قوة الإشارة. تُغلّف هذه المعلمات في رسالة JSON وتُرسل إلى موفر موقع الشبكة عبر HTTP POST. بناءً على هذه المعلمات، يستطيع موفر موقع الشبكة حساب الموقع. تشمل الاستخدامات الشائعة لمعلومات الموقع هذه فرض ضوابط الوصول، وتوطين المحتوى وتخصيصه، وتحليل حركة المرور، والإعلانات السياقية ، ومنع سرقة الهوية. [ 14 ]
مثال على التعليمات البرمجية
كود جافا سكريبت بسيط يتحقق مما إذا كان المتصفح يدعم واجهة برمجة تطبيقات تحديد الموقع الجغرافي، ثم يستخدمها للحصول على الموقع الحالي للجهاز. ينشئ هذا الكود دالة يمكن استدعاؤها على صفحة HTML باستخدام <body>:
const geoFindMe = () => { if ( navigator . geolocation ) { navigator . geolocation . getCurrentPosition ( success , error , geoOptions ); } else { console . log ( "خدمات تحديد الموقع الجغرافي غير مدعومة من قبل متصفح الويب الخاص بك." ); } }const success = ( position ) => { const latitude = position . coords . latitude ; const longitude = position . coords . longitude ; const altitude = position . coords . altitude ; const accuracy = position . coords . accuracy ; console . log ( `lat: ${ latitude } long: ${ longitude } ` ); }const error = ( error ) => { console.log ( ` تعذر استرداد موقعك بسبب $ { error.code } : $ { error.message } ` ) ; }const geoOptions = { enableHighAccuracy : true , maximumAge : 30000 , timeout : 27000 };انظر أيضاً
مراجع
- ↑ "تاريخ نشر مواصفات واجهة برمجة تطبيقات تحديد الموقع الجغرافي، الإصدار الثاني" . W3C. بدون تاريخ . تم الاطلاع عليه بتاريخ 21 أبريل 2021 .
- ↑ بوبيسكو، أندريه (22 ديسمبر 2008). "مواصفات واجهة برمجة تطبيقات تحديد الموقع الجغرافي" . مجموعة عمل تحديد الموقع الجغرافي التابعة لاتحاد شبكة الويب العالمية . تم الاطلاع عليه بتاريخ 21 أبريل 2021 .
- 1 2 3 4 كاسيريس، ماركوس؛ غرانت، رايلي (1 سبتمبر 2022). "مواصفات واجهة برمجة تطبيقات تحديد الموقع الجغرافي" . مجموعة عمل تحديد الموقع الجغرافي التابعة لاتحاد شبكة الويب العالمية . تم الاطلاع عليه بتاريخ 8 فبراير 2024 .
- ↑ "واجهة برمجة تطبيقات تحديد الموقع الجغرافي: واجهة برمجة تطبيقات Gears: كود جوجل" . كود جوجل . 9 يوليو 2009. مؤرشف من الأصل في 14 فبراير 2012. تم الاطلاع عليه في 21 أبريل 2021 .
- 1 2 "GeolocationAPI - gears - يوفر تحديد الموقع الجغرافي لجهاز يعمل بمتصفح ويب يدعم Gears. - تحسين متصفح الويب الخاص بك - استضافة مشاريع جوجل" . كود جوجل . مؤرشف من الأصل في 22 ديسمبر 2015. تم الاطلاع عليه في 21 أبريل 2021 .
- ↑ "إصدار جديد مستقر من متصفح كروم: أهلاً بكم، ماك ولينكس!" . مدونة جوجل كروم . 25 مايو 2010. تم الاطلاع عليه بتاريخ 21 أبريل 2021 .
- ↑ كلاينهوت، هوييب (1 يوليو 2021). "أوبرا 10.60 تصل إلى الإصدار النهائي" . ماي أوبرا . شركة أوبرا للبرمجيات . مؤرشف من الأصل في 9 نوفمبر 2011. تم الاطلاع عليه في 21 أبريل 2021 .
- ↑ مدونة IEBlog (17 فبراير 2011). "واجهة برمجة تطبيقات تحديد الموقع الجغرافي W3C في IE9 - مدونة IEBlog - الصفحة الرئيسية للموقع - مدونات MSDN" . مدونة IEBlog . مؤرشفة من الأصل في 19 فبراير 2011. تم الاطلاع عليها في 21 أبريل 2021 .
- ↑ Opera.com (25 نوفمبر 2010). "أوبرا تُسرّع تصفح الإنترنت على نظام سيمبيان" . مؤرشف من الأصل في 4 نوفمبر 2011. تم الاطلاع عليه في 21 أبريل 2021 .
- ↑ "السياقات الآمنة" . W3.org . تم الاطلاع عليه بتاريخ 13 أكتوبر 2022 .
- ↑ "نية الإزالة: استخدام غير آمن لبيانات الموقع الجغرافي" . Groups.Google.com . تم الاطلاع عليه بتاريخ 13 أكتوبر 2022 .
- ↑ "هل يشارك فايرفوكس موقعي مع مواقع الويب؟ | دعم موزيلا" . موزيلا فايرفوكس . موزيلا. بدون تاريخ . تم الاطلاع عليه بتاريخ 21 أبريل 2021 .
- ↑ "WebScanNotes.com: W3C Geolocation API" . WebScanNotes . nd مؤرشف من الأصل في 12 نوفمبر 2012. تم الاطلاع عليه في 21 أبريل 2021 .
- ↑ كينغ، كيفن ف. (8 يونيو 2010). "الاختصاص القضائي الشخصي، والتجارة الإلكترونية، والخصوصية: التداعيات القانونية الشاملة لتقنيات تحديد الموقع الجغرافي الحديثة" (نُشر في 9 يونيو 2010). SSRN 1622411. تاريخ الاسترجاع: 21 أبريل 2021 .
روابط خارجية
- واجهات برمجة التطبيقات
- HTML5
- تحديد الموقع الجغرافي عبر الإنترنت
- برامج تحديد المواقع
- معايير الويب
