Place Autocomplete (เดิม) เป็นเว็บเซอร์วิสที่แสดงผลการคาดคะเนสถานที่เพื่อตอบสนองต่อคำขอ HTTP คำขอระบุสตริงการค้นหาที่เป็นข้อความ และขอบเขตทางภูมิศาสตร์ที่ไม่บังคับ บริการนี้ใช้เพื่อมอบฟังก์ชันการเติมข้อความอัตโนมัติสำหรับการค้นหาทางภูมิศาสตร์แบบข้อความได้ โดยจะแสดงสถานที่ต่างๆ เช่น ธุรกิจ ที่อยู่ และจุดที่น่าสนใจขณะที่ผู้ใช้พิมพ์
คำขอ Place Autocomplete (เดิม)
Place Autocomplete (เดิม) เป็นส่วนหนึ่งของ Places API และใช้คีย์ API และโควต้าเดียวกันกับ Places API
Place Autocomplete (เดิม) สามารถจับคู่คำและสตริงย่อยทั้งหมด เพื่อระบุชื่อสถานที่ ที่อยู่ และ Plus Code ดังนั้น แอปพลิเคชันจึงสามารถส่งการค้นหาขณะที่ผู้ใช้พิมพ์เพื่อแสดงการคาดคะเนสถานที่แบบเรียลไทม์
คุณต้องจัดรูปแบบ Plus Code อย่างถูกต้อง ซึ่งหมายความว่าคุณต้องหลีกเลี่ยงเครื่องหมายบวกใน URL เป็น
%2B และต้องหลีกเลี่ยงการเว้นวรรคใน URL เป็น %20
- รหัสสากลคือรหัสพื้นที่ 4 หลักและรหัสท้องถิ่น 6 หลักขึ้นไป ตัวอย่างเช่น รหัสส่วนกลางที่ใช้หลีกเลี่ยงอักขระพิเศษใน URL
849VCWC8+R9คือ849VCWC8%2BR9 - รหัสผสมคือรหัสท้องถิ่น 6 หลัก (หรือมากกว่า) ที่มีการระบุตำแหน่งชัดเจน ตัวอย่างเช่น รหัสผสมที่หลีกเลี่ยง URL
CWC8+R9 Mountain View, CA, USAคือCWC8%2BR9%20Mountain%20View%20CA%20USA
การคาดการณ์ที่ส่งกลับได้รับการออกแบบมาเพื่อนำเสนอต่อผู้ใช้เพื่อช่วยในการเลือกสถานที่ที่ต้องการ คุณส่งคำขอรายละเอียดสถานที่ (เดิม)เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับสถานที่ที่ระบบแสดงได้
คำขอ Place Autocomplete (เดิม) คือ HTTP URL ในรูปแบบต่อไปนี้
https://maps.googleapis.com/maps/api/place/autocomplete/output?parameters
โดย output อาจมีค่าใดค่าหนึ่งต่อไปนี้
json(แนะนํา) ระบุเอาต์พุตใน JavaScript Object Notation (JSON)xmlระบุเอาต์พุตเป็น XML
ต้องใช้พารามิเตอร์บางอย่างเพื่อเริ่มต้นคำขอ Place Autocomplete (เดิม)
พารามิเตอร์ทั้งหมดจะแยกกันโดยใช้อักขระแอมเพอร์แซนด์ (&) ตามมาตรฐานใน URL รายการพารามิเตอร์และค่าที่เป็นไปได้
แสดงอยู่ด้านล่าง
พารามิเตอร์ที่จำเป็น
-
อินพุต
สตริงข้อความที่จะค้นหา บริการ Place Autocomplete จะ แสดงผลการจับคู่ที่เกี่ยวข้องตามสตริงนี้ และจัดลำดับผลลัพธ์ตาม ความเกี่ยวข้องที่รับรู้
พารามิเตอร์ที่ไม่บังคับ
-
คอมโพเนนต์
การจัดกลุ่มสถานที่ที่คุณต้องการจำกัดผลลัพธ์ คุณใช้คอมโพเนนต์เพื่อกรองตามประเทศได้สูงสุด 5 ประเทศ ต้องส่งประเทศเป็นรหัสประเทศแบบ 2 อักขระที่เข้ากันได้กับ ISO 3166-1 Alpha-2 เช่น
components=country:frจะ จำกัดผลการค้นหาให้แสดงเฉพาะสถานที่ในฝรั่งเศส ต้องส่งหลายประเทศเป็นตัวกรองcountry:XXหลายตัว โดยมีอักขระไปป์|เป็นตัวคั่น ตัวอย่างเช่นcomponents=country:us|country:pr|country:vi|country:gu|country:mpจะจำกัดผลการค้นหาให้แสดงเฉพาะสถานที่ในสหรัฐอเมริกาและ เขตแดนที่จัดตั้งขึ้นแต่ไม่ได้จดทะเบียนหมายเหตุ: หากได้รับผลลัพธ์ที่ไม่คาดคิดพร้อมรหัสประเทศ โปรดตรวจสอบว่าคุณใช้รหัสที่มีประเทศ เขตแดนขึ้นอยู่ และพื้นที่พิเศษที่น่าสนใจทางภูมิศาสตร์ที่คุณ ต้องการ คุณดูข้อมูลรหัสได้ที่ Wikipedia: รายการรหัสประเทศ ISO 3166 หรือ แพลตฟอร์มการเรียกดูออนไลน์ของ ISO -
ภาษา
ภาษาที่จะแสดงผลลัพธ์
- ดูรายการภาษาที่รองรับ Google อัปเดตภาษาที่รองรับอยู่บ่อยครั้ง รายการนี้จึงอาจไม่ครบถ้วนสมบูรณ์
-
หากไม่ได้ระบุ
languageไว้ API จะพยายามใช้ภาษาที่ต้องการตามที่ระบุไว้ในส่วนหัวAccept-Language - API จะพยายามอย่างเต็มที่เพื่อให้ที่อยู่ที่อ่านง่ายสำหรับทั้งผู้ใช้และคนในพื้นที่ เพื่อให้บรรลุเป้าหมายดังกล่าว ระบบจะแสดงที่อยู่ในภาษาท้องถิ่น โดยแปลงเป็นสคริปต์ที่ผู้ใช้อ่านได้หากจำเป็น ตามภาษาที่ต้องการ ส่วนที่อยู่อื่นๆ จะแสดงในภาษาที่ต้องการ คอมโพเนนต์ของที่อยู่ ทั้งหมดจะแสดงในภาษาเดียวกัน ซึ่งเลือกจากคอมโพเนนต์แรก
- หากชื่อไม่มีในภาษาที่ต้องการ API จะใช้ชื่อที่ใกล้เคียงที่สุด
- ภาษาที่ต้องการมีผลเล็กน้อยต่อชุดผลลัพธ์ที่ API เลือกที่จะแสดง และลำดับที่แสดง โปรแกรมเข้ารหัสพิกัดภูมิศาสตร์ จะตีความตัวย่อแตกต่างกันไปตามภาษา เช่น ตัวย่อของประเภทถนน หรือคำพ้องความหมายที่อาจ ใช้ได้ในภาษาหนึ่งแต่ใช้ไม่ได้ในอีกภาษาหนึ่ง ตัวอย่างเช่น utca และ tér เป็นคำพ้องความหมายของคำว่าถนนในภาษาฮังการี
-
สถานที่
จุดที่ต้องการดึงข้อมูลสถานที่ ต้องระบุเป็น
latitude,longitudeต้องระบุพารามิเตอร์radiusด้วยเมื่อระบุสถานที่ตั้ง หากไม่ได้ระบุradiusระบบจะไม่สนใจพารามิเตอร์locationเมื่อใช้ Text Search API ระบบอาจลบล้างพารามิเตอร์ `location` หาก `query` มีตำแหน่งที่ชัดเจน เช่น `Market in Barcelona` -
locationbias
ต้องการผลลัพธ์ในพื้นที่ที่ระบุโดยการระบุรัศมีและ lat/lng หรือคู่ lat/lng 2 คู่ที่แสดงจุดของสี่เหลี่ยมผืนผ้า หากไม่ได้ระบุพารามิเตอร์นี้ API จะใช้การปรับที่อยู่ IP ตามค่าเริ่มต้น
-
อคติของ IP: สั่งให้ API ใช้การปรับที่อยู่ IP ส่งสตริง
ipbias(ตัวเลือกนี้ไม่มีพารามิเตอร์เพิ่มเติม) -
วงกลม: สตริงที่ระบุรัศมีเป็นเมตร พร้อมละติจูด/ลองจิจูดในรูปแบบทศนิยม
องศา โดยใช้รูปแบบต่อไปนี้
circle:radius@lat,lng -
สี่เหลี่ยมผืนผ้า: สตริงที่ระบุคู่ละติจูด/ลองจิจูด 2 คู่ในรูปแบบองศาทศนิยม
ซึ่งแสดงจุดใต้/ตะวันตกและเหนือ/ตะวันออกของสี่เหลี่ยมผืนผ้า ใช้รูปแบบต่อไปนี้
rectangle:south,west|north,eastโปรดทราบว่าค่าตะวันออก/ตะวันตกจะรวมอยู่ในช่วง -180, 180 และค่าเหนือ/ใต้จะจำกัดอยู่ในช่วง -90, 90
-
อคติของ IP: สั่งให้ API ใช้การปรับที่อยู่ IP ส่งสตริง
-
locationrestriction
จำกัดผลลัพธ์ให้อยู่ในพื้นที่ที่ระบุโดยการระบุรัศมีบวก lat/lng หรือคู่ lat/lng 2 คู่ที่แสดงจุดของสี่เหลี่ยมผืนผ้า
-
วงกลม: สตริงที่ระบุรัศมีเป็นเมตร พร้อมละติจูด/ลองจิจูดในรูปแบบทศนิยม
องศา ใช้รูปแบบต่อไปนี้
circle:radius@lat,lng -
สี่เหลี่ยมผืนผ้า: สตริงที่ระบุคู่ละติจูด/ลองจิจูด 2 คู่ในรูปแบบองศาทศนิยม ซึ่งแสดงจุดใต้/ตะวันตกและเหนือ/ตะวันออกของสี่เหลี่ยมผืนผ้า โดยใช้รูปแบบต่อไปนี้
rectangle:south,west|north,eastโปรดทราบ ว่าค่าตะวันออก/ตะวันตกจะอยู่ในช่วง -180 ถึง 180 และ ค่าเหนือ/ใต้จะอยู่ในช่วง -90 ถึง 90
-
วงกลม: สตริงที่ระบุรัศมีเป็นเมตร พร้อมละติจูด/ลองจิจูดในรูปแบบทศนิยม
องศา ใช้รูปแบบต่อไปนี้
-
ออฟเซ็ต
ตำแหน่งในคำที่ป้อนของอักขระสุดท้ายที่บริการ ใช้เพื่อจับคู่คำที่คาดคะเน เช่น หากอินพุตคือ
Googleและออฟเซ็ตคือ 3 บริการจะจับคู่กับGooระบบจะจับคู่สตริงที่กำหนดโดยออฟเซ็ตกับ คำแรกในคำที่ป้อนเท่านั้น เช่น หากคำที่ป้อนคือGoogle abcและออฟเซ็ตคือ 3 บริการจะพยายามจับคู่กับGoo abcหากไม่ได้ระบุออฟเซ็ต บริการ จะใช้ทั้งคำ โดยทั่วไปแล้ว ควรกำหนดออฟเซ็ตเป็นตำแหน่งของเคอร์เซอร์ข้อความ -
origin
จุดต้นทางที่จะใช้คำนวณระยะทางแบบเส้นตรงไปยัง ปลายทาง (แสดงเป็น
distance_meters) หากไม่ระบุค่านี้ ระบบจะไม่แสดงระยะทางแบบเส้นตรง ต้องระบุเป็นlatitude,longitude -
รัศมี
กำหนดระยะทาง (เป็นเมตร) ที่จะแสดงผลลัพธ์ของสถานที่ คุณ อาจทำให้ผลการค้นหาเอนเอียงไปยังวงกลมที่ระบุได้โดยส่งพารามิเตอร์
locationและradiusการทำเช่นนี้จะสั่งให้บริการ Places แสดงผลลัพธ์ภายในวงกลมนั้นต่อไป และอาจยังแสดงผลลัพธ์ที่อยู่นอกพื้นที่ที่กำหนดระบบจะจำกัดรัศมีโดยอัตโนมัติให้มีค่าสูงสุดตามประเภทการค้นหาและพารามิเตอร์อื่นๆ
- เติมข้อความอัตโนมัติ: 50,000 เมตร
-
การค้นหาในบริเวณใกล้เคียง
- เมื่อใช้
keywordหรือname: 50,000 เมตร -
ไม่มี
keywordหรือname-
สูงสุด 50,000 เมตร โดยปรับแบบไดนามิกตามความหนาแน่นของพื้นที่ โดยไม่ขึ้นอยู่กับพารามิเตอร์
rankby -
เมื่อใช้
rankby=distanceระบบจะไม่ยอมรับพารามิเตอร์รัศมี และจะส่งผลให้เกิดINVALID_REQUEST
-
สูงสุด 50,000 เมตร โดยปรับแบบไดนามิกตามความหนาแน่นของพื้นที่ โดยไม่ขึ้นอยู่กับพารามิเตอร์
- เมื่อใช้
- การเติมข้อความค้นหาอัตโนมัติ: 50,000 เมตร
- การค้นหาข้อความ: 50,000 เมตร
-
ภูมิภาค
รหัสภูมิภาคที่ระบุเป็นค่าccTLD ("โดเมนระดับบนสุด") 2 อักขระ รหัส ccTLD ส่วนใหญ่จะเหมือนกับรหัส ISO 3166-1 โดยมีข้อยกเว้นที่สำคัญบางประการ ตัวอย่างเช่น ccTLD ของสหราชอาณาจักรคือ "uk" (.co.uk) ขณะที่รหัส ISO 3166-1 คือ "gb" (ในทางเทคนิคสำหรับ นิติบุคคล "สหราชอาณาจักรบริเตนใหญ่และไอร์แลนด์เหนือ")
-
sessiontoken
สตริงแบบสุ่มที่ระบุเซสชันการเติมข้อความอัตโนมัติ เพื่อวัตถุประสงค์ในการเรียกเก็บเงิน
เซสชันจะเริ่มต้นเมื่อผู้ใช้เริ่มพิมพ์คำค้นหา และสิ้นสุดเมื่อ ผู้ใช้เลือกสถานที่และมีการเรียกรายละเอียดสถานที่ แต่ละเซสชันสามารถ มีการค้นหาหลายรายการ ตามด้วยการเลือกสถานที่ 1 แห่ง คีย์ API ที่ใช้สำหรับคำขอแต่ละรายการภายในเซสชันต้องเป็นของโปรเจ็กต์คอนโซล Google Cloud เดียวกัน เมื่อเซสชันสิ้นสุดลง โทเค็นจะใช้ไม่ได้อีกต่อไป แอปของคุณต้องสร้างโทเค็นใหม่สำหรับแต่ละเซสชัน หากไม่ได้ระบุพารามิเตอร์
sessiontokenหรือหากคุณใช้โทเค็นของเซสชันซ้ำ ระบบจะเรียกเก็บเงินสำหรับเซสชันราวกับว่าไม่มีการระบุโทเค็นของเซสชัน (ระบบจะเรียกเก็บเงินสำหรับคำขอแต่ละรายการแยกกัน)เราขอแนะนำให้ปฏิบัติตามหลักเกณฑ์ต่อไปนี้
- ใช้โทเค็นของเซสชันสำหรับเซสชันการเติมข้อความอัตโนมัติทั้งหมด
- สร้างโทเค็นใหม่สำหรับแต่ละเซสชัน ขอแนะนำให้ใช้ UUID เวอร์ชัน 4
- ตรวจสอบว่าคีย์ API ที่ใช้สำหรับคำขอ Place Autocomplete และรายละเอียดสถานที่ทั้งหมดภายในเซสชันเป็นของโปรเจ็กต์ Cloud Console เดียวกัน
- อย่าลืมส่งโทเค็นของเซสชันที่ไม่ซ้ำกันสำหรับเซสชันใหม่แต่ละรายการ การใช้โทเค็นเดียวกันกับเซสชันมากกว่า 1 เซสชันจะทำให้ระบบเรียกเก็บเงินสำหรับคำขอแต่ละรายการแยกกัน
-
strictbounds
แสดงเฉพาะสถานที่ที่อยู่ภายในภูมิภาคที่กำหนดโดย
locationและradiusเท่านั้น นี่เป็นข้อจำกัด ไม่ใช่ความลำเอียง ซึ่งหมายความว่าระบบจะไม่แสดงผลการค้นหานอกภูมิภาคนี้ แม้ว่าจะตรงกับข้อมูลที่ผู้ใช้ป้อนก็ตาม -
ประเภท
คุณสามารถจำกัดผลลัพธ์จากคำขอ Place Autocomplete ให้เป็นประเภทใดประเภทหนึ่งได้โดยส่งพารามิเตอร์
typesพารามิเตอร์นี้ ระบุประเภทหรือคอลเล็กชันประเภท ตามที่ระบุไว้ใน ประเภทสถานที่ หากไม่ได้ระบุ ระบบจะแสดงผลทุกประเภทสถานที่หนึ่งๆ จะมีประเภทหลักได้เพียงประเภทเดียวจากประเภทที่แสดงในตารางที่ 1 หรือตารางที่ 2 ตัวอย่างเช่น โรงแรมที่มีบริการอาหารจะแสดงได้เฉพาะกับ
types=lodgingเท่านั้น และไม่แสดงกับtypes=restaurantสำหรับค่าของพารามิเตอร์
typesคุณสามารถระบุค่าใดค่าหนึ่งต่อไปนี้-
ค่าสูงสุด 5 ค่าจาก ตารางที่ 1 หรือ ตารางที่ 2 หากมีหลายค่า ให้คั่นแต่ละค่าด้วย
|(แถบแนวตั้ง) เช่นtypes=book_store|cafe -
ตัวกรองที่รองรับรายการใดรายการหนึ่งในตารางที่ 3 คุณไม่สามารถผสมคอลเล็กชันประเภทต่างๆ ได้
ระบบจะปฏิเสธคำขอพร้อมข้อผิดพลาด
INVALID_REQUESTในกรณีต่อไปนี้- ระบุประเภทมากกว่า 5 ประเภท
- มีประเภทที่ไม่รู้จัก
- ประเภทใดก็ตามจากตารางที่ 1 หรือตารางที่ 2 ผสมกับตัวกรองใดก็ตามในตารางที่ 3
-
ตัวอย่าง Place Autocomplete (เดิม)
คำขอสำหรับสถานประกอบการที่มีสตริง "Amoeba" ภายใน พื้นที่ที่อยู่ใจกลางซานฟรานซิสโก แคลิฟอร์เนีย
URL
https://maps.googleapis.com/maps/api/place/autocomplete/json ?input=amoeba &types=establishment &location=37.76999%2C-122.44696 &radius=500 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=amoeba&types=establishment&location=37.76999%2C-122.44696&radius=500&key=YOUR_API_KEY'คำขอเดียวกันซึ่งจำกัดผลการค้นหาให้อยู่ภายในระยะ 500 เมตรจาก Ashbury St & Haight St, San Francisco
URL
https://maps.googleapis.com/maps/api/place/autocomplete/json ?input=amoeba &types=establishment &location=37.76999%2C-122.44696&radius=500 &strictbounds=true &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=amoeba&types=establishment&location=37.76999%2C-122.44696&radius=500&strictbounds=true&key=YOUR_API_KEY'คำขอสำหรับที่อยู่ที่มีคำว่า "Vict" พร้อมผลลัพธ์เป็นภาษาฝรั่งเศส
URL
https://maps.googleapis.com/maps/api/place/autocomplete/json ?input=Vict &types=geocode &language=fr &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=Vict&types=geocode&language=fr&key=YOUR_API_KEY'คำขอสำหรับเมืองที่มี "Vict" พร้อมผลลัพธ์เป็นภาษาโปรตุเกสแบบบราซิล
URL
https://maps.googleapis.com/maps/api/place/autocomplete/json ?input=Vict &types=(cities) &language=pt_BR&key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=Vict&types=(cities)&language=pt_BR&key=YOUR_API_KEY'โปรดทราบว่าคุณจะต้องแทนที่คีย์ API ในตัวอย่างเหล่านี้ด้วยคีย์ของคุณเอง
การตอบกลับ Place Autocomplete (เดิม)
การตอบกลับ Place Autocomplete (เดิม) จะแสดงในรูปแบบที่ระบุโดย
output แฟล็กภายในเส้นทาง URL ของคำขอ ผลลัพธ์ด้านล่าง
บ่งบอกถึงสิ่งที่อาจแสดงสําหรับการค้นหาที่มีพารามิเตอร์ต่อไปนี้
URL
https://maps.googleapis.com/maps/api/place/autocomplete/json ?input=Paris &types=geocode &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=Paris&types=geocode&key=YOUR_API_KEY'JSON
{ "predictions": [ { "description": "Paris, France", "matched_substrings": [{ "length": 5, "offset": 0 }], "place_id": "ChIJD7fiBh9u5kcRYJSMaMOCCwQ", "reference": "ChIJD7fiBh9u5kcRYJSMaMOCCwQ", "structured_formatting": { "main_text": "Paris", "main_text_matched_substrings": [{ "length": 5, "offset": 0 }], "secondary_text": "France", }, "terms": [ { "offset": 0, "value": "Paris" }, { "offset": 7, "value": "France" }, ], "types": ["locality", "political", "geocode"], }, { "description": "Paris, TX, USA", "matched_substrings": [{ "length": 5, "offset": 0 }], "place_id": "ChIJmysnFgZYSoYRSfPTL2YJuck", "reference": "ChIJmysnFgZYSoYRSfPTL2YJuck", "structured_formatting": { "main_text": "Paris", "main_text_matched_substrings": [{ "length": 5, "offset": 0 }], "secondary_text": "TX, USA", }, "terms": [ { "offset": 0, "value": "Paris" }, { "offset": 7, "value": "TX" }, { "offset": 11, "value": "USA" }, ], "types": ["locality", "political", "geocode"], }, { "description": "Paris, TN, USA", "matched_substrings": [{ "length": 5, "offset": 0 }], "place_id": "ChIJ4zHP-Sije4gRBDEsVxunOWg", "reference": "ChIJ4zHP-Sije4gRBDEsVxunOWg", "structured_formatting": { "main_text": "Paris", "main_text_matched_substrings": [{ "length": 5, "offset": 0 }], "secondary_text": "TN, USA", }, "terms": [ { "offset": 0, "value": "Paris" }, { "offset": 7, "value": "TN" }, { "offset": 11, "value": "USA" }, ], "types": ["locality", "political", "geocode"], }, { "description": "Paris, Brant, ON, Canada", "matched_substrings": [{ "length": 5, "offset": 0 }], "place_id": "ChIJsamfQbVtLIgR-X18G75Hyi0", "reference": "ChIJsamfQbVtLIgR-X18G75Hyi0", "structured_formatting": { "main_text": "Paris", "main_text_matched_substrings": [{ "length": 5, "offset": 0 }], "secondary_text": "Brant, ON, Canada", }, "terms": [ { "offset": 0, "value": "Paris" }, { "offset": 7, "value": "Brant" }, { "offset": 14, "value": "ON" }, { "offset": 18, "value": "Canada" }, ], "types": ["neighborhood", "political", "geocode"], }, { "description": "Paris, KY, USA", "matched_substrings": [{ "length": 5, "offset": 0 }], "place_id": "ChIJsU7_xMfKQ4gReI89RJn0-RQ", "reference": "ChIJsU7_xMfKQ4gReI89RJn0-RQ", "structured_formatting": { "main_text": "Paris", "main_text_matched_substrings": [{ "length": 5, "offset": 0 }], "secondary_text": "KY, USA", }, "terms": [ { "offset": 0, "value": "Paris" }, { "offset": 7, "value": "KY" }, { "offset": 11, "value": "USA" }, ], "types": ["locality", "political", "geocode"], }, ], "status": "OK", }
XML
<?xml version="1.0" encoding="UTF-8"?> <AutocompletionResponse> <status>OK</status> <prediction> <description>Paris, France</description> <type>locality</type> <type>political</type> <type>geocode</type> <reference>ChIJD7fiBh9u5kcRYJSMaMOCCwQ</reference> <term> <value>Paris</value> <offset>0</offset> </term> <term> <value>France</value> <offset>7</offset> </term> <matched_substring> <offset>0</offset> <length>5</length> </matched_substring> <place_id>ChIJD7fiBh9u5kcRYJSMaMOCCwQ</place_id> <structured_formatting> <description>Paris</description> <subdescription>France</subdescription> <description_matched_substring> <offset>0</offset> <length>5</length> </description_matched_substring> </structured_formatting> </prediction> <prediction> <description>Paris, TX, USA</description> <type>locality</type> <type>political</type> <type>geocode</type> <reference>ChIJmysnFgZYSoYRSfPTL2YJuck</reference> <term> <value>Paris</value> <offset>0</offset> </term> <term> <value>TX</value> <offset>7</offset> </term> <term> <value>USA</value> <offset>11</offset> </term> <matched_substring> <offset>0</offset> <length>5</length> </matched_substring> <place_id>ChIJmysnFgZYSoYRSfPTL2YJuck</place_id> <structured_formatting> <description>Paris</description> <subdescription>TX, USA</subdescription> <description_matched_substring> <offset>0</offset> <length>5</length> </description_matched_substring> </structured_formatting> </prediction> <prediction> <description>Paris, TN, USA</description> <type>locality</type> <type>political</type> <type>geocode</type> <reference>ChIJ4zHP-Sije4gRBDEsVxunOWg</reference> <term> <value>Paris</value> <offset>0</offset> </term> <term> <value>TN</value> <offset>7</offset> </term> <term> <value>USA</value> <offset>11</offset> </term> <matched_substring> <offset>0</offset> <length>5</length> </matched_substring> <place_id>ChIJ4zHP-Sije4gRBDEsVxunOWg</place_id> <structured_formatting> <description>Paris</description> <subdescription>TN, USA</subdescription> <description_matched_substring> <offset>0</offset> <length>5</length> </description_matched_substring> </structured_formatting> </prediction> <prediction> <description>Paris, Brant, ON, Canada</description> <type>neighborhood</type> <type>political</type> <type>geocode</type> <reference>ChIJsamfQbVtLIgR-X18G75Hyi0</reference> <term> <value>Paris</value> <offset>0</offset> </term> <term> <value>Brant</value> <offset>7</offset> </term> <term> <value>ON</value> <offset>14</offset> </term> <term> <value>Canada</value> <offset>18</offset> </term> <matched_substring> <offset>0</offset> <length>5</length> </matched_substring> <place_id>ChIJsamfQbVtLIgR-X18G75Hyi0</place_id> <structured_formatting> <description>Paris</description> <subdescription>Brant, ON, Canada</subdescription> <description_matched_substring> <offset>0</offset> <length>5</length> </description_matched_substring> </structured_formatting> </prediction> <prediction> <description>Paris, KY, USA</description> <type>locality</type> <type>political</type> <type>geocode</type> <reference>ChIJsU7_xMfKQ4gReI89RJn0-RQ</reference> <term> <value>Paris</value> <offset>0</offset> </term> <term> <value>KY</value> <offset>7</offset> </term> <term> <value>USA</value> <offset>11</offset> </term> <matched_substring> <offset>0</offset> <length>5</length> </matched_substring> <place_id>ChIJsU7_xMfKQ4gReI89RJn0-RQ</place_id> <structured_formatting> <description>Paris</description> <subdescription>KY, USA</subdescription> <description_matched_substring> <offset>0</offset> <length>5</length> </description_matched_substring> </structured_formatting> </prediction> </AutocompletionResponse>
PlacesAutocompleteResponse
| ช่อง | ต้องระบุ | ประเภท | คำอธิบาย |
|---|---|---|---|
|
ต้องระบุ | Array<PlaceAutocompletePrediction> |
มีอาร์เรย์ของการคาดคะเน ดูข้อมูลเพิ่มเติมได้ที่ PlaceAutocompletePrediction |
|
ต้องระบุ | PlacesAutocompleteStatus |
มีสถานะของคำขอ และอาจมีข้อมูลการแก้ไขข้อบกพร่อง เพื่อช่วยคุณติดตามหาสาเหตุที่คำขอไม่สำเร็จ ดูข้อมูลเพิ่มเติมได้ที่ PlacesAutocompleteStatus |
|
ไม่บังคับ | สตริง |
เมื่อบริการแสดงรหัสสถานะอื่นที่ไม่ใช่
|
|
ไม่บังคับ | Array<string> |
เมื่อบริการแสดงข้อมูลเพิ่มเติมเกี่ยวกับข้อกำหนดของคำขอ อาจมีช่อง |
สิ่งที่น่าสนใจเป็นพิเศษในผลลัพธ์คือองค์ประกอบ place_id ซึ่งสามารถใช้เพื่อขอรายละเอียดที่เจาะจงมากขึ้นเกี่ยวกับสถานที่โดยใช้คำค้นหาแยกต่างหาก ดูคำขอรายละเอียดสถานที่ (เดิม)
การตอบกลับ XML ประกอบด้วยองค์ประกอบ <AutocompletionResponse> เดียวที่มีองค์ประกอบย่อย 2 ประเภท ดังนี้
- องค์ประกอบ
<status>เดียวมีข้อมูลเมตาในคำขอ ดูรหัสสถานะด้านล่าง - องค์ประกอบ
<prediction>ตั้งแต่ 0 รายการขึ้นไป โดยแต่ละรายการมี ข้อมูลเกี่ยวกับสถานที่เดียว ดูข้อมูลเกี่ยวกับผลลัพธ์เหล่านี้ได้ที่ผลลัพธ์ของ Place Autocomplete (เดิม) Places API จะแสดงผลลัพธ์ได้สูงสุด 5 รายการ
เราขอแนะนำให้ใช้ json เป็นแฟล็กเอาต์พุตที่ต้องการ
เว้นแต่แอปพลิเคชันของคุณจะต้องใช้ xml ด้วยเหตุผลบางประการ
การประมวลผลทรี XML ต้องใช้ความระมัดระวังเพื่อให้คุณอ้างอิงโหนดและองค์ประกอบที่เหมาะสม
ดูการประมวลผล
XML ด้วย XPath เพื่อรับความช่วยเหลือในการประมวลผล XML
PlacesAutocompleteStatus
รหัสสถานะที่บริการส่งกลับ
OKซึ่งหมายความว่าคำขอ API สำเร็จ-
ZERO_RESULTSแสดงว่าการค้นหาสําเร็จ แต่ ไม่มีผลลัพธ์ ข้อผิดพลาดนี้อาจเกิดขึ้นหากการค้นหามีขอบเขตใน สถานที่ตั้งระยะไกล -
INVALID_REQUESTซึ่งบ่งชี้ว่าคำขอ API มีรูปแบบไม่ถูกต้อง โดยทั่วไปเกิดจากไม่มีพารามิเตอร์input -
OVER_QUERY_LIMITที่ระบุข้อมูลต่อไปนี้- คุณใช้ QPS เกินขีดจำกัดแล้ว
- บัญชีของคุณไม่ได้เปิดใช้การเรียกเก็บเงิน
- ใช้เครดิต $200 รายเดือนหรือโควต้าการใช้งานที่กำหนดเองเกินแล้ว
- วิธีการชำระเงินที่ระบุใช้ไม่ได้อีกต่อไป (เช่น บัตรเครดิตหมดอายุ)
-
REQUEST_DENIEDซึ่งระบุว่าคำขอของคุณถูกปฏิเสธ โดยทั่วไปเนื่องจากสาเหตุต่อไปนี้- คำขอไม่มีคีย์ API
- พารามิเตอร์
keyไม่ถูกต้อง
UNKNOWN_ERRORซึ่งบ่งบอกถึงข้อผิดพลาดที่ไม่รู้จัก
เมื่อบริการ Places แสดงผลลัพธ์ JSON จากการค้นหา ระบบจะวางผลลัพธ์เหล่านั้นไว้
ภายในpredictionsอาร์เรย์ แม้ว่าบริการจะไม่แสดงผลลัพธ์ (เช่น หาก location อยู่ระยะไกล) บริการก็จะยังแสดงอาร์เรย์ predictions ว่าง การตอบกลับ XML ประกอบด้วยองค์ประกอบ <prediction> ตั้งแต่ 0 รายการขึ้นไป
PlaceAutocompletePrediction
| ช่อง | ต้องระบุ | ประเภท | คำอธิบาย |
|---|---|---|---|
|
ต้องระบุ | สตริง |
มีชื่อที่มนุษย์อ่านได้สำหรับผลลัพธ์ที่แสดง สำหรับผลลัพธ์ |
|
ต้องระบุ | อาร์เรย์<PlaceAutocompleteMatchedSubstring> |
รายการสตริงย่อยที่อธิบายตำแหน่งของคำที่ป้อน ในข้อความผลการคาดคะเน เพื่อให้ไฮไลต์คำได้ หากเลือก ดูข้อมูลเพิ่มเติมได้ที่ PlaceAutocompleteMatchedSubstring |
|
ต้องระบุ | PlaceAutocompleteStructuredFormat |
ระบุข้อความที่จัดรูปแบบไว้ล่วงหน้าซึ่งแสดงในผลการเติมข้อความอัตโนมัติ ได้ เนื้อหานี้มีไว้เพื่อให้อ่านตามที่เป็นอยู่ อย่าแยกวิเคราะห์ที่อยู่ซึ่งจัดรูปแบบแล้วแบบเป็นโปรแกรม ดูข้อมูลเพิ่มเติมได้ที่ PlaceAutocompleteStructuredFormat |
|
ต้องระบุ | Array<PlaceAutocompleteTerm> |
มีอาร์เรย์ของคำที่ระบุแต่ละส่วนของคำอธิบายที่แสดงผล (โดยทั่วไปแล้วส่วนของคำอธิบายจะสิ้นสุดด้วยเครื่องหมายคอมมา) แต่ละรายการในอาร์เรย์มีฟิลด์
ดูข้อมูลเพิ่มเติมได้ที่ PlaceAutocompleteTerm |
|
ไม่บังคับ | จำนวนเต็ม |
ระยะทางแบบเส้นตรงเป็นเมตรจากจุดเริ่มต้น ระบบจะแสดงผลช่องนี้เฉพาะคำขอที่ส่งด้วย |
|
ไม่บังคับ | สตริง |
ตัวระบุข้อความที่ระบุสถานที่โดยไม่ซ้ำกัน หากต้องการดึงข้อมูลเกี่ยวกับสถานที่ ให้ส่งตัวระบุนี้ในช่อง placeId ของคำขอ Places API ดูข้อมูลเพิ่มเติมเกี่ยวกับรหัสสถานที่ได้ที่ ภาพรวมรหัสสถานที่ |
|
ไม่บังคับ | สตริง |
ดู place_id |
|
ไม่บังคับ | Array<string> |
มีอาร์เรย์ของประเภทที่ใช้กับสถานที่นี้ เช่น
|
PlaceAutocompleteMatchedSubstring
| ช่อง | ต้องระบุ | ประเภท | คำอธิบาย |
|---|---|---|---|
|
ต้องระบุ | ตัวเลข |
ความยาวของสตริงย่อยที่ตรงกันในข้อความผลการคาดคะเน |
|
ต้องระบุ | ตัวเลข |
ตำแหน่งเริ่มต้นของสตริงย่อยที่ตรงกันในข้อความผลลัพธ์การคาดคะเน |
PlaceAutocompleteStructuredFormat
| ช่อง | ต้องระบุ | ประเภท | คำอธิบาย |
|---|---|---|---|
|
ต้องระบุ | สตริง |
มีข้อความหลักของการคาดคะเน ซึ่งมักจะเป็นชื่อของ สถานที่ |
|
ต้องระบุ | Array<PlaceAutocompleteMatchedSubstring> |
มีอาร์เรย์ที่มีค่า ดูข้อมูลเพิ่มเติมได้ที่ PlaceAutocompleteMatchedSubstring |
|
ไม่บังคับ | สตริง |
มีข้อความรองของการคาดคะเน ซึ่งมักจะเป็นสถานที่ตั้งของ สถานที่ |
|
ไม่บังคับ | Array<PlaceAutocompleteMatchedSubstring> |
มีอาร์เรย์ที่มีค่า ดูข้อมูลเพิ่มเติมได้ที่ PlaceAutocompleteMatchedSubstring |
PlaceAutocompleteTerm
| ช่อง | ต้องระบุ | ประเภท | คำอธิบาย |
|---|---|---|---|
|
ต้องระบุ | ตัวเลข |
กำหนดตำแหน่งเริ่มต้นของคำนี้ในคำอธิบาย โดยวัดเป็นอักขระ Unicode |
|
ต้องระบุ | สตริง |
ข้อความของคำ |
การเพิ่มประสิทธิภาพ Place Autocomplete (เดิม)
ส่วนนี้อธิบายแนวทางปฏิบัติแนะนำที่จะช่วยให้คุณใช้ประโยชน์จากบริการ Place Autocomplete (เดิม) ได้อย่างเต็มที่
หลักเกณฑ์ทั่วไปมีดังนี้
- วิธีที่เร็วที่สุดในการพัฒนาอินเทอร์เฟซผู้ใช้ที่ใช้งานได้คือการใช้ Maps JavaScript API Place Autocomplete (เดิม) Places SDK สำหรับ Android Place Autocomplete (เดิม) หรือ Places SDK สำหรับ iOS ตัวควบคุม UI Place Autocomplete (เดิม)
- ทำความเข้าใจฟิลด์ข้อมูลที่สำคัญของ Place Autocomplete (เดิม) ตั้งแต่เริ่มต้น
- ฟิลด์การเอนเอียงตามสถานที่ตั้งและข้อจำกัดด้านสถานที่ตั้งเป็นฟิลด์ที่ไม่บังคับ แต่ อาจส่งผลต่อประสิทธิภาพการเติมข้อความอัตโนมัติอย่างมาก
- ใช้การจัดการข้อผิดพลาดเพื่อให้แน่ใจว่าแอปของคุณจะลดประสิทธิภาพลงอย่างราบรื่น หาก API แสดงข้อผิดพลาด
- ตรวจสอบว่าแอปของคุณจัดการกรณีที่ไม่มีการเลือกและเสนอวิธีให้ผู้ใช้ดำเนินการต่อ
แนวทางปฏิบัติแนะนำในการเพิ่มประสิทธิภาพต้นทุน
การเพิ่มประสิทธิภาพต้นทุนพื้นฐาน
หากต้องการเพิ่มประสิทธิภาพค่าใช้จ่ายในการใช้บริการ Place Autocomplete (เดิม) ให้ใช้มาสก์ฟิลด์ในวิดเจ็ตรายละเอียดสถานที่ (เดิม) และ Place Autocomplete (เดิม) เพื่อแสดงเฉพาะ ฟิลด์ข้อมูล Place Autocomplete (เดิม) ที่คุณต้องการ
การเพิ่มประสิทธิภาพต้นทุนขั้นสูง
พิจารณาการติดตั้งใช้งาน Place Autocomplete (เดิม) แบบเป็นโปรแกรมเพื่อเข้าถึง SKU: การเติมข้อความอัตโนมัติ - ราคาต่อคำขอ และขอผลลัพธ์ Geocoding API เกี่ยวกับสถานที่ที่เลือกแทนรายละเอียดสถานที่ (เดิม) การกำหนดราคาต่อคำขอที่ใช้ร่วมกับ Geocoding API จะคุ้มค่ากว่าการกำหนดราคาต่อเซสชัน (อิงตามเซสชัน) หากเป็นไปตามเงื่อนไขต่อไปนี้ทั้ง 2 ข้อ
- หากคุณต้องการเพียงละติจูดและลองจิจูดหรือที่อยู่ของสถานที่ที่ผู้ใช้เลือก Geocoding API จะให้ข้อมูลนี้ ในราคาที่ถูกกว่าการเรียก Place Details (เดิม)
- หากผู้ใช้เลือกการคาดคะเนการเติมข้อความอัตโนมัติภายในคำขอ Place Autocomplete (เดิม) โดยเฉลี่ย 4 รายการหรือน้อยกว่า การกำหนดราคาต่อคำขออาจคุ้มค่ากว่าการกำหนดราคาต่อเซสชัน
แอปพลิเคชันของคุณต้องใช้ข้อมูลอื่นนอกเหนือจากที่อยู่และละติจูด/ลองจิจูดของการคาดการณ์ที่เลือกไหม
ใช่ ต้องระบุรายละเอียดเพิ่มเติม
ใช้ Place Autocomplete ตามเซสชัน (เดิม) กับรายละเอียดสถานที่ (เดิม)
เนื่องจากแอปพลิเคชันของคุณต้องใช้รายละเอียดสถานที่ (เดิม) เช่น ชื่อสถานที่ สถานะธุรกิจ
หรือเวลาทำการ การติดตั้งใช้งานการป้อนข้อความอัตโนมัติของสถานที่ (เดิม) จึงควรใช้โทเค็นเซสชัน
(โดยโปรแกรมหรือสร้างไว้ใน
วิดเจ็ต JavaScript,
Android
หรือ iOS
) ต่อเซสชัน
รวมถึง SKU ข้อมูล Places ที่เกี่ยวข้อง
ขึ้นอยู่กับช่องข้อมูลสถานที่ที่คุณขอ1
การติดตั้งใช้งานวิดเจ็ต
ระบบจะสร้างการจัดการเซสชันลงในวิดเจ็ต
JavaScript
Android
หรือ iOS
โดยอัตโนมัติ ซึ่งรวมถึงทั้งคำขอ Place Autocomplete (เดิม) และคำขอรายละเอียดสถานที่ (เดิม)
ในการคาดคะเนที่เลือก อย่าลืมระบุพารามิเตอร์ fields เพื่อให้มั่นใจว่าคุณขอเฉพาะฟิลด์ข้อมูล
Place Autocomplete (เดิม)
ที่คุณต้องการ
การติดตั้งใช้งานแบบเป็นโปรแกรม
ใช้
โทเค็นของเซสชัน
กับคำขอ Place Autocomplete (เดิม) เมื่อขอรายละเอียดสถานที่ (เดิม) เกี่ยวกับการคาดคะเนที่เลือก ให้รวมพารามิเตอร์ต่อไปนี้
- รหัสสถานที่จากการตอบกลับของ Place Autocomplete (เดิม)
- โทเค็นของเซสชันที่ใช้ในคำขอ Place Autocomplete (เดิม)
- พารามิเตอร์
fieldsที่ระบุ ฟิลด์ข้อมูล Place Autocomplete (เดิม) ที่คุณต้องการ
ไม่ ต้องใช้เพียงที่อยู่และสถานที่ตั้ง
Geocoding API อาจเป็นตัวเลือกที่คุ้มค่ากว่ารายละเอียดสถานที่ (เดิม) สำหรับแอปพลิเคชันของคุณ ทั้งนี้ขึ้นอยู่กับประสิทธิภาพการใช้งาน Place Autocomplete (เดิม) ประสิทธิภาพของ Place Autocomplete (เดิม) ของแต่ละแอปพลิเคชันจะแตกต่างกันไปตามสิ่งที่ผู้ใช้ป้อน สถานที่ที่ใช้แอปพลิเคชัน และมีการใช้แนวทางปฏิบัติแนะนำในการเพิ่มประสิทธิภาพหรือไม่
หากต้องการตอบคำถามต่อไปนี้ ให้วิเคราะห์จำนวนอักขระโดยเฉลี่ยที่ผู้ใช้พิมพ์ก่อนเลือกการคาดคะเน Place Autocomplete (เดิม) ในแอปพลิเคชัน
โดยเฉลี่ยแล้ว ผู้ใช้เลือกการคาดคะเน Place Autocomplete (เดิม) ในคำขอไม่เกิน 4 รายการใช่ไหม
ใช่
ใช้ Place Autocomplete (เดิม) แบบเป็นโปรแกรมโดยไม่ต้องใช้โทเค็นเซสชัน และเรียกใช้ Geocoding API ในการคาดคะเนสถานที่ที่เลือก
Geocoding API จะแสดงที่อยู่และพิกัดละติจูด/ลองจิจูด
การส่งคำขอ 4 รายการ
การเติมข้อความอัตโนมัติ - ต่อคำขอ
รวมถึงการเรียกใช้ Geocoding API
เกี่ยวกับการคาดคะเนสถานที่ที่เลือกมีค่าใช้จ่ายต่อเซสชันน้อยกว่า Place Autocomplete (เดิม) ต่อเซสชัน1
ลองใช้แนวทางปฏิบัติแนะนำด้านประสิทธิภาพเพื่อช่วยให้ผู้ใช้ได้รับการคาดคะเนที่ต้องการโดยใช้อักขระน้อยลง
ไม่
ใช้ Place Autocomplete ตามเซสชัน (เดิม) กับรายละเอียดสถานที่ (เดิม)
เนื่องจากจำนวนคำขอเฉลี่ยที่คุณคาดว่าจะทำก่อนที่ผู้ใช้จะเลือกการคาดคะเน
Place Autocomplete (เดิม) เกินกว่าต้นทุนของการกำหนดราคาต่อเซสชัน การติดตั้งใช้งาน
Place Autocomplete (เดิม) ควรใช้โทเค็นของเซสชันสำหรับทั้งคำขอ Place Autocomplete (เดิม)
และคำขอรายละเอียดสถานที่ (เดิม) ที่เกี่ยวข้อง
ต่อเซสชัน
1
การติดตั้งใช้งานวิดเจ็ต
ระบบจะสร้างการจัดการเซสชันลงใน
วิดเจ็ต JavaScript,
Android
หรือ iOS
โดยอัตโนมัติ ซึ่งรวมถึงทั้งคำขอ Place Autocomplete (เดิม) และคำขอรายละเอียดสถานที่ (เดิม)
ในการคาดคะเนที่เลือก อย่าลืมระบุพารามิเตอร์ fields
เพื่อให้แน่ใจว่าคุณขอเฉพาะช่องที่ต้องการเท่านั้น
การติดตั้งใช้งานแบบเป็นโปรแกรม
ใช้
โทเค็นของเซสชัน
กับคำขอ Place Autocomplete (เดิม)
เมื่อขอรายละเอียดสถานที่ (เดิม) เกี่ยวกับการคาดคะเนที่เลือก
ให้รวมพารามิเตอร์ต่อไปนี้
- รหัสสถานที่จากการตอบกลับของ Place Autocomplete (เดิม)
- โทเค็นของเซสชันที่ใช้ในคำขอ Place Autocomplete (เดิม)
- พารามิเตอร์
fieldsที่ระบุฟิลด์ข้อมูลพื้นฐาน เช่น ที่อยู่และเรขาคณิต
พิจารณาหน่วงเวลาคำขอ Place Autocomplete (เดิม)
คุณสามารถใช้กลยุทธ์ต่างๆ เช่น การหน่วงเวลาคำขอ Place Autocomplete (เดิม) จนกว่าผู้ใช้จะพิมพ์อักขระ 3 หรือ 4 ตัวแรก เพื่อให้แอปพลิเคชันของคุณส่งคำขอน้อยลง เช่น การส่งคำขอ Place Autocomplete (เดิม) สำหรับอักขระแต่ละตัวหลังจากที่ผู้ใช้พิมพ์อักขระตัวที่ 3 หมายความว่าหากผู้ใช้พิมพ์อักขระ 7 ตัว แล้วเลือกการคาดคะเนที่คุณส่งคำขอ Geocoding API 1 รายการ ค่าใช้จ่ายทั้งหมดจะเป็นค่าใช้จ่ายสำหรับ Place Autocomplete (เดิม) 4 รายการต่อคำขอ + Geocoding1
หากการหน่วงเวลาคำขอช่วยให้คำขอแบบเป็นโปรแกรมโดยเฉลี่ยต่ำกว่า 4 รายการ คุณสามารถทำตามคำแนะนำสำหรับการติดตั้งใช้งาน Place Autocomplete (เดิม) ที่มีประสิทธิภาพด้วย Geocoding API โปรดทราบว่าการหน่วงเวลาคำขออาจทำให้ผู้ใช้ที่คาดหวังว่าจะเห็นการคาดคะเนทุกครั้งที่กดแป้นพิมพ์รับรู้ว่าเกิดความหน่วง
ลองใช้แนวทางปฏิบัติแนะนำด้านประสิทธิภาพเพื่อช่วยให้ผู้ใช้ได้รับคำที่ระบบคาดคะเนซึ่งผู้ใช้กำลังมองหาโดยใช้จำนวนอักขระน้อยลง
-
ดูค่าใช้จ่ายได้ที่รายการราคาของ Google Maps Platform
แนวทางปฏิบัติแนะนำด้านประสิทธิภาพ
หลักเกณฑ์ต่อไปนี้อธิบายวิธีเพิ่มประสิทธิภาพ Place Autocomplete (เดิม)
- เพิ่มข้อจำกัดในแต่ละประเทศ การเอนเอียงตำแหน่ง และ (สำหรับการติดตั้งใช้งานแบบเป็นโปรแกรม) ค่ากำหนดภาษาลงในการติดตั้งใช้งาน Place Autocomplete (เดิม) ไม่จำเป็นต้องใช้ค่ากำหนดภาษาสำหรับวิดเจ็ต เนื่องจากวิดเจ็ตจะเลือกค่ากำหนดภาษาจากเบราว์เซอร์หรืออุปกรณ์เคลื่อนที่ของผู้ใช้
- หาก Place Autocomplete (เดิม) มาพร้อมกับแผนที่ คุณสามารถกำหนดตำแหน่งตามวิวพอร์ตของแผนที่ได้
- ในกรณีที่ผู้ใช้ไม่เลือกการคาดคะเนจาก Place Autocomplete (เดิม) โดยทั่วไป
เนื่องจากการคาดคะเนเหล่านั้นไม่ใช่ที่อยู่ผลลัพธ์ที่ต้องการ คุณสามารถนำข้อมูลจากผู้ใช้ที่ป้อนไว้เดิมมาใช้ซ้ำเพื่อพยายามรับผลลัพธ์ที่เกี่ยวข้องมากขึ้นได้โดยทำดังนี้
- หากคาดหวังให้ผู้ใช้ป้อนเฉพาะข้อมูลที่อยู่ ให้นำข้อมูลที่ผู้ใช้ป้อนเดิมมาใช้ซ้ำ ในการเรียก Geocoding API
- หากคาดว่าผู้ใช้จะป้อนคำค้นหาสถานที่ที่เฉพาะเจาะจงตามชื่อหรือที่อยู่ ให้ใช้คำขอรายละเอียดสถานที่ (เดิม) หากคาดหวังผลลัพธ์ในภูมิภาคที่เฉพาะเจาะจงเท่านั้น ให้ใช้การเอนเอียงตามตำแหน่ง
- ผู้ใช้ป้อนที่อยู่ย่อย เช่น ที่อยู่ของยูนิตหรืออพาร์ตเมนต์ที่เฉพาะเจาะจงภายในอาคาร ตัวอย่างเช่น ที่อยู่ "Stroupežnického 3191/17, Praha" ในเช็ก จะให้การคาดคะเนบางส่วนในการเติมข้อความอัตโนมัติของสถานที่ (เดิม)
- ผู้ใช้ที่ป้อนที่อยู่ที่มีคำนำหน้าส่วนของถนน เช่น "23-30 29th St, Queens" ใน นิวยอร์กซิตี้ หรือ "47-380 Kamehameha Hwy, Kaneohe" บนเกาะคาไวในฮาวาย
การให้น้ำหนักพิเศษกับบางตำแหน่ง
เอนเอียงผลลัพธ์ไปยังพื้นที่ที่ระบุโดยส่งพารามิเตอร์ location และพารามิเตอร์ radius
ซึ่งจะสั่งให้ Place Autocomplete (เดิม) แสดงผลลัพธ์ภายในพื้นที่ที่กำหนด ระบบอาจยังแสดงผลลัพธ์ที่อยู่นอกพื้นที่ที่กำหนด คุณสามารถใช้พารามิเตอร์ includedRegionCodes เพื่อกรองผลลัพธ์ให้แสดงเฉพาะสถานที่ภายในประเทศที่ระบุได้
การจำกัดตำแหน่ง
จำกัดผลการค้นหาให้อยู่ในพื้นที่ที่ระบุโดยส่งพารามิเตอร์ locationRestriction
นอกจากนี้ คุณยังจำกัดผลการค้นหาให้อยู่ในภูมิภาคที่กำหนดโดย location และพารามิเตอร์ radius ได้ด้วยการเพิ่มพารามิเตอร์ strictbounds ซึ่งจะสั่งให้ Place Autocomplete (เดิม) แสดงผลลัพธ์เฉพาะ
ภายในภูมิภาคนั้น