Giới thiệu
Mã địa điểm giúp xác định riêng một địa điểm trong cơ sở dữ liệu của Google Địa điểm và trên Google Maps. Mã địa điểm được chấp nhận trong các yêu cầu gửi đến các API Maps sau:
- Lấy địa chỉ cho Mã địa điểm trong Geocoding API và Dịch vụ mã hoá địa lý, API Maps JavaScript.
- Chỉ định điểm xuất phát, điểm đến và điểm trung gian trong Routes API và Directions API (Cũ) và Dịch vụ chỉ đường, API Maps JavaScript (Cũ).
- Chỉ định điểm xuất phát và điểm đến trong Routes API và Distance Matrix API (Cũ) và Dịch vụ ma trận khoảng cách, API Maps JavaScript (Cũ).
- Truy xuất thông tin chi tiết về địa điểm trong API Địa điểm (Mới), SDK Địa điểm cho Android (Mới), SDK Địa điểm cho iOS (Mới) và Thư viện Địa điểm.
- Sử dụng tham số Mã địa điểm trong Maps Embed API.
- Đang truy xuất cụm từ tìm kiếm trong URL của Maps.
- Hiển thị giới hạn tốc độ trong Roads API.
- Tìm và định kiểu cho đa giác ranh giới trong tính năng định kiểu dựa trên dữ liệu cho ranh giới.
Tìm mã của một địa điểm cụ thể
Bạn đang tìm mã địa điểm của một địa điểm cụ thể? Sử dụng công cụ tìm mã địa điểm bên dưới để tìm một địa điểm và lấy Mã địa điểm của địa điểm đó:
Ngoài ra, bạn có thể xem trình tìm mã địa điểm cùng với mã của trình tìm này trong tài liệu về API JavaScript của Maps.
Tìm mã địa điểm bằng mã hoặc tác nhân AI
Trình tìm mã địa điểm tra cứu từng địa điểm một trong trình duyệt. Để tra cứu mã địa điểm từ một ứng dụng, tập lệnh hoặc tác nhân AI, hãy gọi một API:
- Trong mã của bạn:
Gửi yêu cầu
Tìm kiếm văn bản (Mới)
với các thuộc tính địa điểm được đặt thành
GMSPlacePropertyPlaceID. Những yêu cầu chỉ trả về mã địa điểm sẽ được tính phí theo SKU Places API Text Search Essentials (IDs Only). - Từ một tác nhân AI hoặc ứng dụng LLM: Sử dụng
Resolution API trong
các công cụ tác nhân của Maps Experience. Các công cụ MCP
resolve_namesvàresolve_maps_urlsgiải quyết tối đa 20 tên địa điểm, địa chỉ hoặc URL của Google Maps thành mã địa điểm trong mỗi yêu cầu. Các phương thức này cũng giống như các phương thức RESTresolveNamesvàresolveMapsUrls.
Tổng quan
Mã địa điểm là giá trị nhận dạng dạng văn bản giúp xác định duy nhất một địa điểm. Độ dài của giá trị nhận dạng có thể khác nhau (không có độ dài tối đa cho Mã địa điểm). Ví dụ:
-
ChIJgUbEo8cfqokR5lP9_Wh_DaM -
GhIJQWDl0CIeQUARxks3icF8U8A -
EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0EiGhIYChQKEgnRTo6ixx-qiRHo_bbmkCm7ZRAN -
EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0E -
IhoSGAoUChIJ0U6OoscfqokR6P225pApu2UQDQ
Mã địa điểm được cung cấp cho hầu hết các vị trí, bao gồm cả doanh nghiệp, địa danh, công viên và giao lộ. Một địa điểm hoặc vị trí có thể có nhiều mã địa điểm khác nhau. Mã địa điểm có thể thay đổi theo thời gian.
Bạn có thể sử dụng cùng một mã địa điểm trên Places API và một số API của Google Maps Platform. Ví dụ: bạn có thể sử dụng cùng một mã địa điểm để tham chiếu một địa điểm trong Places API, Maps JavaScript API, Geocoding API, Maps Embed API và Roads API.
Truy xuất thông tin chi tiết về địa điểm bằng mã địa điểm
Cách phổ biến để sử dụng mã địa điểm là tìm kiếm địa điểm bằng Places API hoặc Thư viện địa điểm trong Maps JavaScript API. Sau đó, hãy sử dụng Mã địa điểm được trả về để truy xuất Place Details. Bạn có thể lưu trữ mã địa điểm và sử dụng mã đó để truy xuất cùng một thông tin chi tiết về địa điểm sau này. Đọc về cách lưu mã địa điểm ở phần sau của tài liệu này.
Ví dụ về cách sử dụng SDK Địa điểm cho iOS
Mã địa điểm là giá trị nhận dạng dạng văn bản giúp xác định duy nhất một địa điểm. Trong SDK Địa điểm dành cho iOS, bạn có thể truy xuất mã nhận dạng của một địa điểm từ đối tượng GMSPlace. Bạn có thể lưu trữ mã địa điểm và sử dụng mã đó để truy xuất lại đối tượng GMSPlace sau này.
Để lấy địa điểm theo mã nhận dạng, hãy gọi GMSPlacesClient
fetchPlaceFromPlaceID:, truyền các tham số sau:
- Một chuỗi chứa Mã địa điểm.
- Một hoặc nhiều
GMSPlaceField, chỉ định loại dữ liệu cần trả về. - Mã phiên nếu lệnh gọi được thực hiện để kết thúc một cụm từ tìm kiếm tự động hoàn thành. Nếu không, hãy truyền nil.
GMSPlaceResultCallbackđể xử lý kết quả.
API gọi phương thức gọi lại đã chỉ định, truyền vào một đối tượng GMSPlace. Nếu không tìm thấy địa điểm, thì đối tượng địa điểm sẽ là rỗng.
Places Swift SDK cho iOS
// Initialize Places Swift Client. let placesClient = PlacesClient.shared // A hotel in Saigon with an attribution let placeID = "ChIJV4k8_9UodTERU5KXbkYpSYs" // Fetch Place Request. let fetchPlaceRequest = FetchPlaceRequest( placeID: placeID, placeProperties: [.displayName] ) Task { switch await placesClient.fetchPlace(with: fetchPlaceRequest) { case .success(let place): print("The selected place is: \(place.displayName): \(String(describing: place.description))") case .failure(let placesError): print("Place not found: \(placeID); \(placesError)") } }
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]); } }];
Lưu mã địa điểm để sử dụng sau
Mã địa điểm được miễn các quy định hạn chế về việc lưu vào bộ nhớ đệm nêu trong Mục 3.2.3(b) của Điều khoản dịch vụ của Nền tảng Google Maps. Do đó, bạn có thể lưu trữ các giá trị mã địa điểm để sử dụng sau này.
Làm mới mã địa điểm được lưu trữ
Vì Mã địa điểm có thể thay đổi do nội dung cập nhật trên cơ sở dữ liệu của Google Maps, nên Google khuyên bạn nên
làm mới mã địa điểm nếu mã đó đã tồn tại hơn 12 tháng. Bạn có thể làm mới Mã địa điểm miễn phí bằng cách gửi một
yêu cầu về Chi tiết địa điểm,
chỉ chỉ định trường GMSPlaceFieldPlaceID
trong tham số fields.
Lệnh gọi này kích hoạt SKU Place Details - Làm mới mã nhận dạng.
Mã lỗi khi sử dụng mã địa điểm
INVALID_REQUEST
Mã trạng thái INVALID_REQUEST cho biết mã địa điểm được chỉ định không hợp lệ. INVALID_REQUEST có thể được trả về khi mã địa điểm đã bị cắt bớt hoặc sửa đổi và không còn chính xác nữa.
NOT_FOUND
Mã trạng thái NOT_FOUND cho biết mã địa điểm được chỉ định đã lỗi thời. Mã địa điểm có thể trở nên lỗi thời nếu một doanh nghiệp đóng cửa hoặc chuyển đến một địa điểm mới. Mã địa điểm cũng có thể thay đổi do nội dung cập nhật trên cơ sở dữ liệu của Google Maps. Trong những trường hợp như vậy, một địa điểm có thể nhận được mã địa điểm mới và mã cũ sẽ trả về phản hồi NOT_FOUND.
Để làm mới kết quả trong trường hợp mã địa điểm đã lỗi thời, hãy lưu trữ yêu cầu ban đầu đã trả về từng mã địa điểm và gửi lại yêu cầu nếu cần. Xin lưu ý rằng yêu cầu được phát hành lại sẽ được tính phí theo SKU thích hợp.
Một số loại mã địa điểm đôi khi có thể gây ra phản hồi NOT_FOUND hoặc API có thể trả về một mã địa điểm khác trong phản hồi. Các loại mã địa điểm này bao gồm:
- Địa chỉ đường phố không tồn tại trong Google Maps dưới dạng địa chỉ chính xác, nhưng được suy ra từ một dải địa chỉ.
- Các đoạn của một tuyến đường dài, trong đó yêu cầu cũng chỉ định một thành phố hoặc địa phương.
- Giao lộ.
- Địa điểm có thành phần địa chỉ thuộc loại
subpremise.
Các mã nhận dạng này thường có dạng một chuỗi dài (không có độ dài tối đa cho Mã địa điểm). Ví dụ:
EpID4LC14LC_4LCo4LCv4LGN4LCo4LCX4LCw4LGNIC0g4LC44LGI4LCm4LGN4LCs4LC-4LCm4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSAmIOCwteCwv-CwqOCwr-CxjSDgsKjgsJfgsLDgsY0g4LCu4LGG4LCv4LC_4LCo4LGNIOCwsOCxi-CwoeCxjeCwoeCxgSwg4LC14LC_4LCo4LCv4LGNIOCwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwsuCwleCxjeCwt-CxjeCwruCwv-CwqOCwl-CwsOCxjSDgsJXgsL7gsLLgsKjgsYAsIOCwuOCwsOCxguCwsOCxjSDgsKjgsJfgsLDgsY0g4LC14LGG4LC44LGN4LCf4LGNLCDgsLjgsK_gsYDgsKbgsL7gsKzgsL7gsKbgsY0sIOCwueCxiOCwpuCwsOCwvuCwrOCwvuCwpuCxjSwg4LCk4LGG4LCy4LCC4LCX4LC-4LCjIDUwMDA1OSwg4LCt4LC-4LCw4LCk4LCm4LGH4LC24LCCImYiZAoUChIJ31l5uGWYyzsR9zY2qk9lDiASFAoSCd9ZebhlmMs7Efc2NqpPZQ4gGhQKEglDz61OZpjLOxHgDJCFY-o1qBoUChIJi37TW2-YyzsRr_uv50r7tdEiCg1MwFcKFS_dyy4