شناسه های مکان

پلتفرم را انتخاب کنید: سرویس وب جاوا اسکریپت اندروید iOS
توسعه دهندگان منطقه اقتصادی اروپا (EEA).

مقدمه

شناسه‌های مکان به طور منحصربه‌فردی یک مکان را در پایگاه داده Google Places و در Google Maps شناسایی می‌کنند. شناسه‌های مکان در درخواست‌های Maps API زیر پذیرفته می‌شوند:

  • بازیابی آدرسی برای شناسه مکان در API و سرویس کدگذاری جغرافیایی، Maps JavaScript API.
  • تعیین مبدأ، مقصد و ایستگاه های بین راهی در Routes API و Directions API (Legacy) و Directions Service، Maps JavaScript API (Legacy).
  • تعیین مبدا و مقصد در Routes API و Distance Matrix API (Legacy) و Distance Matrix Service، Maps JavaScript API (Legacy).
  • بازیابی جزئیات مکان در Places API (جدید)، Places SDK برای Android (جدید)، Places SDK برای iOS (جدید) و Places Library.
  • استفاده از پارامترهای Place ID در Maps Embed API.
  • بازیابی عبارت های جستجو در URL های Maps.
  • نمایش محدودیت سرعت در Roads API.
  • یافتن و سبک‌دهی چند ضلعی‌های مرزی در استایل‌سازی مبتنی بر داده برای مرزها.

شناسه یک مکان خاص را پیدا کنید

آیا به دنبال شناسه مکان یک مکان خاص هستید؟ برای جستجوی مکان و دریافت شناسه مکان از مکان یاب زیر استفاده کنید:

همچنین، می‌توانید مکان یاب شناسه مکان را با کد آن در اسناد Maps JavaScript API مشاهده کنید .

نمای کلی

شناسه مکان یک شناسه متنی است که به طور منحصر به فرد مکان را شناسایی می کند. طول شناسه ممکن است متفاوت باشد (حداکثر طول برای شناسه مکان ها وجود ندارد). مثال ها:

  • ChIJgUbEo8cfqokR5lP9_Wh_DaM
  • GhIJQWDl0CIeQUARxks3icF8U8A
  • EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0EiGhIYChQKEgnRTo6ixx-qiRHo_bbmkCm7ZRAN
  • EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0E
  • IhoSGAoUChIJ0U6OoscfqokR6P225pApu2UQDQ

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

می‌توانید از همان شناسه مکان در میان API Places و تعدادی از APIهای پلتفرم Google Maps استفاده کنید. برای مثال، می‌توانید از همان شناسه مکان برای ارجاع به مکانی در Places API ، Maps JavaScript API ، Geocoding API ، Maps Embed API و Roads API استفاده کنید.

جزئیات مکان را با استفاده از شناسه مکان بازیابی کنید

یک روش رایج برای استفاده از شناسه‌های مکان، جستجوی مکان است (برای مثال، با استفاده از API Places یا کتابخانه Places در Maps JavaScript API) سپس از شناسه مکان برگشتی برای بازیابی جزئیات مکان استفاده کنید. می‌توانید شناسه مکان را ذخیره کنید و از آن برای بازیابی جزئیات همان مکان بعدا استفاده کنید. در مورد ذخیره شناسه مکان در زیر بخوانید.

مثال با استفاده از کتابخانه مکان ها در Maps JavaScript API

برای استفاده از شناسه مکان در برنامه جاوا اسکریپت خود، ابتدا باید شناسه را پیدا کنید که در PlaceResult ارائه شده توسط جستجوی مکان یا توسط getPlace() در سرویس تکمیل خودکار مکان (میراث) موجود است. سپس می توانید از شناسه مکان برای جستجوی جزئیات مکان استفاده کنید.

var map;

function initialize() {
  // Create a map centered in Pyrmont, Sydney (Australia).
  map = new google.maps.Map(document.getElementById('map'), {
    center: {lat: -33.8666, lng: 151.1958},
    zoom: 15
  });

  // Search for Google's office in Australia.
  var request = {
    location: map.getCenter(),
    radius: '500',
    query: 'Google Sydney'
  };

  var service = new google.maps.places.PlacesService(map);
  service.textSearch(request, callback);
}

// Checks that the PlacesServiceStatus is OK, and adds a marker
// using the place ID and location from the PlacesService.
function callback(results, status) {
  if (status == google.maps.places.PlacesServiceStatus.OK) {
    var marker = new google.maps.Marker({
      map: map,
      place: {
        placeId: results[0].place_id,
        location: results[0].geometry.location
      }
    });
  }
}

google.maps.event.addDomListener(window, 'load', initialize);

شناسه مکان را برای استفاده بعدی ذخیره کنید

شناسه‌های مکان از محدودیت‌های حافظه پنهان که در بخش 3.2.3(b) شرایط خدمات پلتفرم Google Maps بیان شده است مستثنی هستند. بنابراین می توانید مقادیر مکان شناسه را برای استفاده بعدی ذخیره کنید.

شناسه مکان های ذخیره شده را بازخوانی کنید

از آنجایی که شناسه‌های مکان ممکن است به دلیل به‌روزرسانی‌های پایگاه داده Google Maps تغییر کنند، Google توصیه می‌کند شناسه‌های مکان را در صورتی که بیش از ۱۲ ماه از عمر آنها می‌گذرد، تازه‌سازی کنید. شما می‌توانید شناسه‌های مکان را بدون پرداخت هزینه با درخواست جزئیات مکان ، با مشخص کردن فقط قسمت place_id در پارامتر fields ، بازخوانی کنید.

این تماس جزئیات مکان‌ها - ID Refresh SKU را فعال می‌کند.

کدهای خطا هنگام استفاده از شناسه مکان

INVALID_REQUEST

کد وضعیت INVALID_REQUEST نشان می دهد که شناسه مکان مشخص شده معتبر نیست. INVALID_REQUEST ممکن است زمانی برگردانده شود که شناسه مکان کوتاه شده است یا به شکل دیگری تغییر داده شده است و دیگر صحیح نیست.

NOT_FOUND

کد وضعیت NOT_FOUND نشان می دهد که شناسه مکان مشخص شده منسوخ شده است. اگر یک کسب و کار بسته شود یا به مکان جدیدی نقل مکان کند، ممکن است شناسه مکان منسوخ شود. شناسه‌های مکان نیز ممکن است به دلیل به‌روزرسانی در پایگاه داده Google Maps تغییر کنند. در چنین مواردی، یک مکان ممکن است شناسه مکان جدیدی دریافت کند و شناسه قدیمی یک پاسخ NOT_FOUND را برمی‌گرداند.

برای بازخوانی نتایج در صورت منسوخ شدن شناسه مکان، درخواست اصلی را که هر شناسه مکان را برگردانده است ذخیره کنید و در صورت نیاز درخواست را دوباره صادر کنید. توجه داشته باشید که درخواست صادر شده مجدد در SKU مربوطه صورتحساب می شود.

برخی از انواع شناسه‌های مکان ممکن است گاهی باعث پاسخ NOT_FOUND شوند، یا API ممکن است شناسه مکان دیگری را در پاسخ برگرداند. این انواع شناسه مکان عبارتند از:

  • آدرس‌های خیابانی که در Google Maps به عنوان آدرس‌های دقیق وجود ندارند، اما از طیف وسیعی از آدرس‌ها استنباط می‌شوند.
  • بخش‌های یک مسیر طولانی، که در آن درخواست یک شهر یا محل را نیز مشخص می‌کند.
  • تقاطع ها
  • مکان هایی با جزء آدرس از نوع subpremise .

این شناسه‌ها اغلب به شکل یک رشته طولانی هستند (حداکثر طول برای شناسه‌های مکان وجود ندارد). به عنوان مثال:

EpID4LC14LC_4LCo4LCv4LGN4LCo4LCX4LCw4LGNIC0g4LC44LGI4LCm4LGN4LCs4LC-4LCm4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSAmIOCwteCwv-CwqOCwr-CxjSDgsKjgsJfgsLDgsY0g4LCu4LGG4LCv4LC_4LCo4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSwg4LC14LC_4LCo4LCv4LGNIOCwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwsuCwleCxjeCwt-CxjeCwruCwv-CwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwuOCwsOCxguCwsOCxjSDgsKjgsJfgsLDgsY0g4LC14LGG4LC44LGN4LCf4LGNLCDgsLjgsK_gsYDgsKbgsL7gsKzgsL7gsKbgsY0sIOCwueCxiOCwpuCwsOCwvuCwrOCwvuCwpuCxjSwg4LCk4LGG4LCy4LCC4LCX4LC-4LCjIDUwMDA1OSwg4LCt4LC-4LCw4LCk4LCm4LGH4LC24LCCImYiZAoUChIJ31l5uGWYyzsR9zY2qk9lDiASFAoSCd9ZebhlmMs7Efc2NqpPZQ4gGhQKEglDz61OZpjLOxHgDJCFY-o1qBoUChIJi37TW2-YyzsRr_uv50r7tdEiCg1MwFcKFS_dyy4