การย้ายข้อมูลช่องสถานที่ตั้ง (open_now, utc_offset)

เราเลิกใช้งานฟิลด์ opening_hours.open_now และ utc_offset ของ Places ตั้งแต่วันที่ 20 พฤศจิกายน 2019 และจะปิดฟิลด์ดังกล่าวในวันที่ 20 กุมภาพันธ์ 2021 โดยเราจะเลิกใช้งานฟิลด์เหล่านี้ใน Places Library, Maps JavaScript API เท่านั้น คู่มือนี้จะแสดงวิธีอัปเดตโค้ดเพื่อหยุดใช้ฟิลด์เหล่านี้

ฟิลด์ opening_hours.open_now

ส่วนนี้จะแสดงวิธีอัปเดตฟังก์ชันการทำงานนี้สำหรับคำขอ Places แต่ละประเภท

คำขอรายละเอียดสถานที่

ฟิลด์ opening_hours.open_now ถูกแทนที่ด้วยเมธอด opening_hours.isOpen()

สำหรับคำขอรายละเอียดสถานที่ ให้ใส่ opening_hours และ utc_offset_minutes ในพารามิเตอร์คำขอ fields แทนที่จะขอ opening_hours.open_now ในพารามิเตอร์คำขอ 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