รหัสสถานที่

เลือกแพลตฟอร์ม Android iOS JavaScript บริการผ่านเว็บ

รหัสสถานที่จะระบุสถานที่ในฐานข้อมูล Google Places และใน Google Maps โดยไม่ซ้ำกัน รหัสสถานที่ ได้รับการยอมรับสำหรับคำขอไปยัง Maps API ต่อไปนี้

  • กำลังเรียกที่อยู่สำหรับรหัสสถานที่ในบริการเว็บ Geocoding API และ บริการเข้ารหัสพิกัดภูมิศาสตร์, Maps JavaScript API
  • การระบุต้นทาง จุดหมาย และจุดอ้างอิงกลางใน Routes API และ Directions API บริการเว็บและบริการเส้นทาง, Maps JavaScript API
  • การระบุต้นทางและปลายทางใน Routes API และ บริการเว็บ Distance Matrix API และ บริการเมทริกซ์ระยะทาง, Maps JavaScript API
  • การเรียกดูรายละเอียดสถานที่ในบริการเว็บ Places API, Places SDK สำหรับ Android, Places SDK สำหรับ iOS และห้องสมุด Places
  • การใช้พารามิเตอร์รหัสสถานที่ใน Maps Embed API
  • กำลังเรียกคำค้นหาใน URL ของ Maps
  • กำลังแสดงการจำกัดความเร็วใน Roads API
  • การค้นหาและจัดรูปแบบรูปหลายเหลี่ยมขอบเขตในการจัดรูปแบบตามข้อมูลสำหรับขอบเขต

ค้นหารหัสของสถานที่ที่เจาะจง

คุณกำลังมองหารหัสสถานที่ของสถานที่หนึ่งๆ หรือไม่ ใช้รหัสสถานที่ ตัวค้นหาด้านล่างเพื่อค้นหาสถานที่และรับรหัสของสถานที่

อีกวิธีหนึ่งคือ ดู ตัวค้นหารหัสสถานที่ด้วยโค้ดใน Maps JavaScript API เอกสารประกอบ

ภาพรวม

รหัสสถานที่คือตัวระบุแบบข้อความที่ระบุสถานที่แต่ละแห่งโดยไม่ซ้ำกัน ความยาวของตัวระบุอาจแตกต่างกันไป (ไม่มีความยาวสูงสุดสำหรับรหัสสถานที่) ตัวอย่าง

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

รหัสสถานที่ใช้ได้กับสถานที่ส่วนใหญ่ รวมถึงธุรกิจ จุดสังเกต สวนสาธารณะ และทางแยก สถานที่หรือสถานที่เดียวกันสามารถ มีรหัสสถานที่ที่แตกต่างกันหลายรายการ รหัสสถานที่อาจเปลี่ยนแปลงเมื่อเวลาผ่านไป

คุณสามารถใช้รหัสสถานที่เดียวกันใน Places API และ จำนวน Google Maps Platform API ตัวอย่างเช่น คุณสามารถใช้รหัสสถานที่เดียวกันนี้เพื่อ อ้างอิงถึงสถานที่ใน Places API Maps JavaScript API Geocoding API Maps Embed API และ Roads API

ดึงข้อมูลรายละเอียดสถานที่โดยใช้รหัสสถานที่

วิธีการใช้รหัสสถานที่โดยทั่วไปคือการค้นหาสถานที่ (หากใช้ Places API หรือสถานที่ ใน Maps JavaScript API เป็นต้น) จากนั้นใช้ แสดงผลรหัสสถานที่เพื่อเรียกดูรายละเอียดสถานที่ คุณสามารถจัดเก็บรหัสสถานที่และ ใช้เพื่อเรียกรายละเอียดสถานที่เดิมในภายหลัง อ่านเกี่ยวกับ กำลังบันทึกรหัสสถานที่ด้านล่าง

ตัวอย่างการใช้ Places SDK สำหรับ iOS

รหัสสถานที่คือตัวระบุแบบข้อความที่ระบุสถานที่แต่ละแห่งโดยไม่ซ้ำกัน ใน Places SDK สำหรับ iOS คุณสามารถเรียกดูรหัสของสถานที่จาก GMSPlace ออบเจ็กต์ คุณสามารถจัดเก็บรหัสสถานที่และใช้เพื่อดึงข้อมูล GMSPlace อีกครั้งในภายหลัง

หากต้องการสถานที่โดยใช้บัตรประจำตัว ให้โทร GMSPlacesClient fetchPlaceFromPlaceID: โดยการส่งพารามิเตอร์ต่อไปนี้

  • สตริงที่มีรหัสสถานที่
  • GMSPlaceField อย่างน้อย 1 รายการ ซึ่งระบุประเภทข้อมูลที่จะแสดงผล
  • โทเค็นเซสชัน หากเป็นการเรียกเพื่อสรุปข้อความค้นหาที่เติมข้อความอัตโนมัติ ไม่เช่นนั้น ให้ผ่านค่าศูนย์
  • GMSPlaceResultCallbackเพื่อจัดการกับผลลัพธ์

API จะเรียกใช้เมธอด Callback ที่ระบุและส่งใน GMSPlace ออบเจ็กต์ หากไม่พบสถานที่ วัตถุสถานที่จะเป็นค่าศูนย์

Swift

// A hotel in Saigon with an attribution.
let placeID = "ChIJV4k8_9UodTERU5KXbkYpSYs"

// Specify the place data types to return.
let fields: GMSPlaceField = GMSPlaceField(rawValue: UInt(GMSPlaceField.name.rawValue) |
  UInt(GMSPlaceField.placeID.rawValue))!

placesClient?.fetchPlace(fromPlaceID: placeID, placeFields: fields, sessionToken: nil, callback: {
  (place: GMSPlace?, error: Error?) in
  if let error = error {
    print("An error occurred: \(error.localizedDescription)")
    return
  }
  if let place = place {
    self.lblName?.text = place.name
    print("The selected place is: \(place.name)")
  }
})

Objective-C

// A hotel in Saigon with an attribution.
NSString *placeID = @"ChIJV4k8_9UodTERU5KXbkYpSYs";

// Specify the place data types to return.
GMSPlaceField fields = (GMSPlaceFieldName | GMSPlaceFieldPlaceID);

[_placesClient fetchPlaceFromPlaceID:placeID placeFields:fields sessionToken:nil callback:^(GMSPlace * _Nullable place, NSError * _Nullable error) {
  if (error != nil) {
    NSLog(@"An error occurred %@", [error localizedDescription]);
    return;
  }
  if (place != nil) {
    NSLog(@"The selected place is: %@", [place name]);
  }
}];

บันทึกรหัสสถานที่ไว้ใช้ภายหลัง

รหัสสถานที่ได้รับการยกเว้นจากข้อจำกัดการแคชที่ระบุไว้ใน ส่วนที่ 3.2.3(ข) ของข้อกำหนดในการให้บริการของ Google Maps Platform จึงสามารถจัดเก็บค่ารหัสสถานที่ไว้ใช้ภายหลังได้

กำลังรีเฟรชรหัสสถานที่ที่จัดเก็บไว้

เราขอแนะนำให้รีเฟรชรหัสสถานที่หากมีอายุเกิน 12 เดือน คุณ สามารถรีเฟรชรหัสสถานที่ได้โดยไม่มีค่าใช้จ่าย โดยสร้าง คำขอรายละเอียดสถานที่ การระบุเฉพาะ GMSPlaceFieldPlaceID ในพารามิเตอร์ fields การเรียกนี้จะทริกเกอร์ รายละเอียดสถานที่ - รีเฟรชรหัส SKU

คำขอนี้อาจแสดงสถานะ NOT_FOUND ด้วย โค้ด กลยุทธ์หนึ่งคือการจัดเก็บคำขอเดิมที่ส่งผลลัพธ์กลับมาแต่ละแห่ง ID หากรหัสสถานที่ไม่ถูกต้อง คุณสามารถออกคำขอนั้นอีกครั้งเพื่ออัปเดตข้อมูล ผลลัพธ์ ผลการค้นหาเหล่านี้อาจรวมสถานที่ต้นฉบับหรือไม่ก็ได้ อย่างไรก็ตาม คำขอนี้ สามารถเรียกเก็บเงินได้

รหัสข้อผิดพลาดเมื่อใช้รหัสสถานที่

รหัสสถานะ INVALID_REQUEST ระบุว่ามีการระบุ รหัสสถานที่ไม่ถูกต้อง ระบบอาจแสดงผล INVALID_REQUEST เมื่อ รหัสสถานที่ถูกตัดทอนหรือปรับเปลี่ยน และทำให้ไม่ถูกต้องอีกต่อไป

รหัสสถานะ NOT_FOUND บ่งชี้ว่ารหัสสถานที่ที่ระบุ ล้าสมัย รหัสสถานที่อาจล้าสมัยหากธุรกิจปิดหรือย้ายไปที่ สถานที่ใหม่ รหัสสถานที่อาจมีการเปลี่ยนแปลงเนื่องจากการอัปเดตในวงกว้างบน Google ฐานข้อมูล Maps ในกรณีดังกล่าว สถานที่อาจได้รับรหัสสถานที่ใหม่ และแสดง ID จะแสดงการตอบกลับ NOT_FOUND

โดยเฉพาะอย่างยิ่ง รหัสสถานที่บางประเภทอาจทำให้ 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