وеб جیو لوکیشن آئی پی

استعمال کار کا مقام نکالنا

HTML جیو لوسیشن اپ آئی پی سے استعمال کار کا مقام حاصل کرنا ہوتا ہے۔

کہا جانا ہے کہ اس سے پرائیویسی کو نقصان پہنچ سکتا ہے، جس کے لئے استعمال کار کی منظوری ضروری ہے، تو مقام دستیاب نہیں ہوگا۔

نوئی خود شخصی طور پر کوشش کریں

توجه:جغرافیایی شدن برای دستگاه‌های دارای GPS (مثلاً تلفن‌های هوشمند) دقیق‌ترین است.

همه مرورگرها API جغرافیایی را پشتیبانی می‌کنند:

کروم آئی‌�ی‌� فایرفاکس سافاری اوپرا
پشتیبانی پشتیبانی پشتیبانی پشتیبانی پشتیبانی

توجه:از نسخه 50 کروم به بعد، API جغرافیایی تنها در محیط‌های امن، مانند HTTPS، قابل استفاده خواهد بود. اگر وب‌سایت شما در منبع غیرامن (مثلاً HTTP) میزبانی شود، درخواست برای دریافت موقعیت کاربر دیگر عملی نخواهد شد.

استفاده از API جغرافیایی

getCurrentPosition() این روش برای بازگرداندن موقعیت کاربر استفاده می‌شود.

در مثال زیر، طول و عرض جغرافیایی موقعیت کاربر بازمی‌گردد:

مثال

<script>
const x = document.getElementById("demo");
function getLocation() {
  if (navigator.geolocation) {
    navigator.geolocation.getCurrentPosition(showPosition);
  }
    x.innerHTML = "Geolocation is not supported by this browser.";
  }
}
function showPosition(position) {
  x.innerHTML = "Latitude: " + position.coords.latitude +
  "<br>Longitude: " + position.coords.longitude;
}
</script>

نوئی خود شخصی طور پر کوشش کریں

توضیح مثال:

  1. بررسی کنید که آیا Geolocation پشتیبانی می‌شود یا خیر
  2. اگر روش getCurrentPosition() پشتیبانی شود، آن را اجرا کنید. اگر نه، پیامی به کاربر نشان دهید
  3. اگر روش getCurrentPosition() موفق باشد، یک شیء coordinates به فونکشنی که در پارامتر (showPosition) تعیین شده، بازمی‌گردد
  4. فونکشن showPosition() طول و عرض جغرافیایی را نمایش می‌دهد

مثال بالا یک اسکریپت جغرافیایی بسیار ساده است که شامل مدیریت خطا نمی‌شود.

مدیریت خطا و رد درخواست

getCurrentPosition() دومین پارامتر این روش برای مدیریت خطا استفاده می‌شود. اگر نتوانید موقعیت کاربر را دریافت کنید، این روش توضیح می‌دهد که کدام فونکشن باید اجرا شود:

مثال

function showError(error) {
  switch(error.code) {
    case error.PERMISSION_DENIED:
      x.innerHTML = "کاربر درخواست برای جغرافیایی شدن را رد کرده است.";
      break;
    case error.POSITION_UNAVAILABLE:
      x.innerHTML = "اطلاعات موقعیت در دسترس نیست.";
      break;
    case error.TIMEOUT:
      x.innerHTML = "درخواست برای دریافت موقعیت کاربر زمان‌گذر کرده است.";
      break;
    case error.UNKNOWN_ERROR:
      x.innerHTML = "یک خطا ناشناخته رخ داده است.";
      break;
  }
}

نوئی خود شخصی طور پر کوشش کریں

نتائج را در نقشه نشان دهید

اگر آپ میخواهید نتائج را در نقشه نشان دهید، باید به سرویس نقشه دسترسی پیدا کنید، مثلاً نقشه گوگل.

ایسے مثال میں، بھیجی جانے والی عرض و طول کو گوگل نقشہ میں موجودگی کو دکھانے کیلئے استعمال کیا جاتا ہے (استاتک تصویر کے ذریعے):

مثال

function showPosition(position) {
  let latlon = position.coords.latitude + "," + position.coords.longitude;
  let img_url = "https://maps.googleapis.com/maps/api/staticmap?center=
  "+latlon+"&zoom=14&size=400x300&sensor=false&key=YOUR_KEY";
  document.getElementById("mapholder").innerHTML = "<img src='"+img_url+"'>";
}

موجودگی خاص معلومات

یہ صفحہ کاربر کی موجودگی کو نقشہ میں دکھانے کا طریقہ کار دکھاتا ہے

Geolocation مقامی معلومات کیلئے بھی بہت مفید ہے، مثلاً:

  • تازہ ترین مقامی معلومات
  • کاربر کے قریب کے مکانات کو دکھائیں
  • تیار سے روانگی (Turn-by-turn navigation) (GPS)

getCurrentPosition() طریقہ کار - بھیجی جانے والی صحبت

getCurrentPosition() موفقیت کی صورت میں اس طریقہ کار نے ایک آئیٹم بھیجتا ہے۔ یہ کچھ ضروری ویژگی بھیجتا ہے: جیسے لوگتا، طول، دقت اور اگر دستیاب ہو تو دیگر ویژگیاں بھی بھیجیں

ویژگی بھیجیں
coords.latitude دسایم کسر میں عرض (همیشہ بھیجیں)
coords.longitude دسایم کسر میں طول (همیشہ بھیجیں)
coords.accuracy موجودگی کی دقت (همیشہ بھیجیں)
coords.altitude سموچند کی سطح سے بلندی (میٹر میں کیا جاتا ہے) (اگر دستیاب ہو تو بھیجیں)
coords.altitudeAccuracy موجودگی کی اونچائی کی دقت (اگر دستیاب ہو تو بھیجیں)
coords.heading شمال سے پار کی سمت (اگر دستیاب ہو تو بھیجیں)
coords.speed جبری کسر میں رفتار (اگر دستیاب ہو تو بھیجیں)
timestamp جواب کا تاریخ/وقت (اگر دستیاب ہو تو بھیجیں)

Geolocation اکائی - دیگر مفید طریقہ کار

Geolocation اکائی کی دیگر مفید طریقہ کار بھی ہیں:

  • watchPosition() - کاربر کی موجودگی کی تازہ ترین جگہ کو بھیجیں اور کاربر کی نقل و حرکت کے ساتھ تازہ ترین جگہ کو جاری رکھیں (مثلاً موٹر گاڑی میں GPS)
  • clearWatch() - رجوع کریں watchPosition () کا طریقہ کار.

ایک مثال دکھاتا ہے watchPosition() میتود کو درست جی پی ایس دوربین کی ضرورت ہوتی ہے تاکہ کاچلائی کا امتحان کیا جاسکے (مثلاً اسمارٹ فون):

مثال

<script>
const x = document.getElementById("demo");
function getLocation() {
  if (navigator.geolocation) {
    navigator.geolocation.watchPosition(showPosition);
  }
    x.innerHTML = "Geolocation is not supported by this browser.";
  }
}
function showPosition(position) {
  x.innerHTML = "Latitude: " + position.coords.latitude +
  "<br>Longitude: " + position.coords.longitude;
}
</script>

نوئی خود شخصی طور پر کوشش کریں