Place Field Migration (open_now, utc_offset)

فیلدهای «اماکن» opening_hours.open_now و utc_offset از ۲۰ نوامبر ۲۰۱۹ منسوخ شده‌اند و در ۲۰ فوریه ۲۰۲۱ خاموش خواهند شد. این فیلدها فقط در کتابخانه جاها، Maps JavaScript API منسوخ شده‌اند. این راهنما به شما نشان می‌دهد که چگونه کد خود را به‌روز کنید تا استفاده از این فیلدها را متوقف کنید.

opening_hours.open_now فیلد

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

درخواست‌های «جزئیات جا»

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

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

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.
    }
});

درخواست‌های «پیدا کردن جا»

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

درخواست‌های «جستجوی اطراف» و «جستجوی نوشتار»

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

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

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

utc_offset فیلد

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