Tìm kiếm các địa điểm trong một khu vực cụ thể. Bạn có thể tinh chỉnh kết quả bằng cách cung cấp từ khóa hoặc chỉ định loại địa điểm.
Điểm cuối (Endpoint)
https://maps.track-asia.com/api/v2/place/nearbysearch/{outputFormat}
Định dạng đầu ra (outputFormat)
outputFormat | Mô tả |
---|---|
json (khuyến nghị) | định dạng JSON |
xml | định dạng XML |
Tham số (Parameters)
Tham số | Giá trị | Mô tả | Ví dụ |
---|---|---|---|
location | Chuỗi (bắt buộc) | Tọa độ trung tâm tìm kiếm dưới dạng {vĩ độ},{kinh độ} . Ví dụ: 10.76865,106.6681899 (vĩ độ: 10.76865, kinh độ: 106.6681899) | 10.76865,106.6681899 |
radius | Số (bắt buộc) | Bán kính tìm kiếm tính bằng mét (m). Ví dụ: 100 = 100 mét. Tối đa 50,000 mét (50km). Kết quả ngoài bán kính này vẫn có thể được hiển thị tùy thuộc vào mật độ khu vực. | 100 |
type | Chuỗi | Loại địa điểm cần tìm. Có thể chỉ định nhiều loại bằng dấu | (ví dụ: hospital|pharmacy) | hospital |
key | Chuỗi (bắt buộc) | Khóa API (sử dụng key của bạn, public_key bị giới hạn, chỉ dùng test) | public_key |
new_admin | Boolean | Trả về địa chỉ theo địa giới hành chính mới | true |
include_old_admin | Boolean | (Dùng kèm new_admin) Trả song song cả địa chỉ cũ và mới | true |
Mã ví dụ
Ví dụ này minh họa cách sử dụng định dạng JSON trong phản hồi.
https://maps.track-asia.com/api/v2/place/nearbysearch/json?location=10.76865,106.6681899&radius=100&key=public_key
Ví dụ này minh họa cách sử dụng định dạng XML trong phản hồi:
https://maps.track-asia.com/api/v2/place/nearbysearch/xml?location=10.76865,106.6681899&type=hospital|pharmacy&radius=100&key=public_key
# JSON
curl -G "https://maps.track-asia.com/api/v2/place/nearbysearch/json" \
--data-urlencode "location=10.76865,106.6681899" \
--data-urlencode "type=hospital|pharmacy" \
--data-urlencode "radius=100" \
--data-urlencode "key=public_key"
# XML
curl -G "https://maps.track-asia.com/api/v2/place/nearbysearch/xml" \
--data-urlencode "location=10.76865,106.6681899" \
--data-urlencode "type=hospital|pharmacy" \
--data-urlencode "radius=100" \
--data-urlencode "key=public_key"
// JSON
const response = await fetch("https://maps.track-asia.com/api/v2/place/nearbysearch/json?location=10.76865,106.6681899&radius=100&key=public_key")
const data = await response.json()
console.log(data)
// XML
const responseXML = await fetch("https://maps.track-asia.com/api/v2/place/nearbysearch/xml?location=10.76865,106.6681899&type=hospital|pharmacy&radius=100&key=public_key")
const dataXML = await responseXML.text()
console.log(dataXML)
Phản hồi
JSON Phản hồi
Phản hồi là một đối tượng JSON với cấu trúc như sau:
status
: Chuỗi trạng thái (ví dụ: "OK")html_attributions
: Mảng các chuỗi attribution HTMLresults
: Mảng các đối tượng kết quả. Mỗi đối tượng gồm:place_id
: Định danh duy nhất cho địa điểmname
: Tên địa điểmformatted_address
: Địa chỉ đầy đủ đã được chuẩn hóaadr_address
: Địa chỉ đã được gắn thẻ HTML để hiển thịaddress_components
: Mảng các đối tượng với:long_name
: Tên đầy đủshort_name
: Tên viết tắttypes
: Mảng các loại địa chỉ
geometry
: Đối tượng với:location
: Tọa độ (lat/lng)location_type
: Loại vị tríviewport
: Khu vực hiển thị (northeast/southwest)
plus_code
: Đối tượng với:compound_code
: Mã khu vựcglobal_code
: Mã toàn cầu
types
: Mảng các loại địa điểmicon
: Tên biểu tượngicon_background_color
: Màu nền biểu tượngurl
: (Có thể có) Đường dẫn tới trang chi tiết địa điểmutc_offset
: (Có thể có) Múi giờ địa phương (phút)vicinity
: (Có thể có) Địa chỉ gần nhất hoặc mô tả khu vựcold_address_components
: (Chỉ có khi truyền include_old_admin=true) Mảng các đối tượng thành phần địa chỉ theo địa giới cũ, cấu trúc giống address_components.old_formatted_address
: (Chỉ có khi truyền include_old_admin=true) Địa chỉ đầy đủ theo địa giới cũ.
XML Phản hồi
Phản hồi XML có cấu trúc tương tự, các trường sẽ là các thẻ XML tương ứng với các trường JSON ở trên. Một số khác biệt:
- Kết quả XML được bọc trong phần tử gốc
<PlaceSearchResponse>
- Các mảng trong JSON (như
results
,address_components
,types
) sẽ là các phần tử lặp lại trong XML - Các trường rỗng được thể hiện bằng mảng rỗng trong JSON, nhưng sẽ không có phần tử nào trong XML
Lưu ý quan trọng
- Các trường trong phản hồi tuân theo chuẩn Google Maps Places API.
- Phản hồi không bao gồm toàn bộ thông tin chi tiết của địa điểm. Để lấy thông tin đầy đủ nhất, hãy sử dụng API Place Detail.
Status
Status | Mô tả |
---|---|
OK | cho biết không có lỗi xảy ra; tìm kiếm thành công và ít nhất một kết quả đã được trả về. |
ZERO_RESULTS | cho biết tìm kiếm thành công nhưng không trả về kết quả nào. Điều này có thể xảy ra nếu không tìm thấy địa điểm nào trong bán kính tìm kiếm. |
INVALID_REQUEST | cho biết yêu cầu không hợp lệ (ví dụ: thiếu tham số bắt buộc, giá trị tham số không hợp lệ). |
Error
Khi API trả về mã trạng thái khác OK
, có thể có trường error_message bổ sung trong đối tượng phản hồi. Trường này chứa thông tin chi tiết hơn về lý do đằng sau mã trạng thái đã cho.
Các bước tiếp theo
- Thử API playground