مهاجرت فیلد مکان (open_now، utc_offset)

فیلدهای Places opening_hours.open_now و utc_offset از 20 نوامبر 2019 منسوخ شده‌اند و در 20 فوریه 2021 خاموش خواهند شد. این فیلدها فقط در کتابخانه مکان‌ها، Maps JavaScript API منسوخ شده‌اند. این راهنما به شما نشان می دهد که چگونه کد خود را به روز کنید تا استفاده از این فیلدها متوقف شود.

opening_hours.open_now

این بخش نحوه به روز رسانی این عملکرد را برای هر نوع درخواست Places نشان می دهد.

درخواست جزئیات مکان

فیلد opening_hours.open_now با متد opening_hours.isOpen() جایگزین شده است.

برای درخواست‌های Place Details ، به جای درخواست opening_hours.open_now در پارامتر درخواست fields ، opening_hours و utc_offset_minutes را در پارامتر درخواست fields قرار دهید، سپس متد opening_hours.isOpen() را در شی google.maps.places.PlaceResult برگشتی فراخوانی کنید تا بررسی کنید که آیا مکان باز است مثال زیر یک درخواست Place Details را نشان می‌دهد که تعیین می‌کند یک مکان باز است یا خیر:

new google.maps.places.PlacesService(attrContainer).getDetails({
  placeId: '...',
  fields: ['opening_hours','utc_offset_minutes'],
  }, function (place, status) {
    if (status !== 'OK') return; // something went wrong
    const isOpenAtTime = place.opening_hours.isOpen(new Date('December 17, 2020 03:24:00'));
    if (isOpenAtTime) {
        // We know it's open.
    }

    const isOpenNow = place.opening_hours.isOpen();
    if (isOpenNow) {
        // We know it's open.
    }
});

درخواست های مکان را پیدا کنید

برای درخواست‌های Find Place ، هیچ جایگزینی برای فیلد opening_hours.open_now وجود ندارد. توصیه می‌کنیم برای دریافت اطلاعات opening_hours ، درخواست جزئیات مکان کنید.

جستجوی نزدیک و درخواست‌های جستجوی متن

برای جستجوی Nearby و درخواست‌های جستجوی متن، می‌توانید از پارامتر درخواست openNow استفاده کنید، که اثر فیلتر کردن نتایج را دارد و فقط مکان‌هایی را که در حال حاضر باز هستند شامل می‌شود.

  • openNow:false همه مکان ها را برمی گرداند.
  • openNow:true فقط مکان هایی را برمی گرداند که در حال حاضر باز هستند.

برای فهرست کردن همه مکان‌ها و نشان دادن وضعیت openNow ، ابتدا با استفاده از openNow:false یک درخواست برای دریافت همه مکان‌ها ارسال کنید، سپس با استفاده از openNow:true درخواست کنید تا فقط مکان‌های باز را دریافت کنید. سپس، پاسخ ها را ادغام کنید.

فیلد utc_offset

در درخواست‌های Place Details، فیلد utc_offset با فیلد utc_offset_minutes جایگزین می‌شود. به سادگی در پارامتر درخواست fields و هنگام خواندن این اطلاعات از PlaceResult ، موارد utc_offset را با utc_offset_minutes جایگزین کنید.