Liên kết với Google Maps

Places API (mới) chấp nhận các yêu cầu về dữ liệu địa điểm thông qua nhiều phương thức. Phản hồi của Places API (mới) chứa dữ liệu về một địa điểm, bao gồm cả dữ liệu vị trí và hình ảnh, vị trí địa lý và các địa điểm nổi bật.

Phản hồi từ Tìm kiếm bằng văn bản (Mới), Tìm kiếm lân cận (Mới) và Chi tiết về địa điểm (Mới) cũng có thể chứa các đường liên kết đến Google Maps. Người dùng có thể duyệt xem các đường liên kết này trên Google Maps để xem thêm thông tin về một địa điểm trong câu trả lời.

Ví dụ: Bạn tìm kiếm các sân bay ở San Francisco, California. Sau đó, phản hồi sẽ bao gồm Sân bay Quốc tế San Francisco (SFO) trong danh sách địa điểm. Đối tượng Place cho SFO trong phản hồi sẽ thêm trường googleMapsUri chứa các đường liên kết đến Google Maps để mở Google Maps cho địa điểm, đường đi đến địa điểm, bài đánh giá về địa điểm và ảnh của địa điểm.

Cùng với các đường liên kết được thêm vào đối tượng Place, trường googleMapsUri cũng được thêm vào các đối tượng ReviewsPhotos trong phản hồi:

  • Reviews.googleMapsUri: Chứa đường liên kết đến bài đánh giá trên Google Maps để bạn có thể xem bài đánh giá đó trong trình duyệt.

  • Photos.googleMapsUri: Chứa đường liên kết đến ảnh trên Google Maps để bạn có thể xem ảnh trong trình duyệt.

API Explorer cho phép bạn đưa ra các yêu cầu trực tiếp để có thể làm quen với những lựa chọn mới này:

Hãy làm thử!

Bảng sau đây cho thấy các đường liên kết đến Google Maps mà bạn có thể đưa vào câu trả lời:

Đường liên kết đến Google Maps Mô tả Tên trường
Địa điểm Đường liên kết để mở Google Maps đến địa điểm. googleMapsLinks.placeUri
Đường đi Đường liên kết để mở đường đi đến địa điểm trong Google Maps. googleMapsLinks.directionsUri
Viết bài đánh giá Đường liên kết để viết bài đánh giá về địa điểm đó trên Google Maps. googleMapsLinks.writeAReviewUri
Đọc bài đánh giá Đường liên kết để cho thấy các bài đánh giá về địa điểm đó trên Google Maps. googleMapsLinks.reviewsUri
Ảnh Đường liên kết để cho thấy ảnh của địa điểm đó trong Google Maps. googleMapsLinks.photosUri

Các đường liên kết trong phản hồi về địa điểm nằm trong trường googleMapsLinks. Hãy nhớ thêm trường googleMapsLinks vào mặt nạ trường của yêu cầu nếu bạn muốn các trường này xuất hiện trong phản hồi.

Ví dụ: lệnh Tìm kiếm bằng văn bản (Mới) sau đây bao gồm tất cả các đường liên kết đến Maps trong phản hồi:

curl -X POST -d '{
  "textQuery" : "San Francisco International Airport"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel,places.googleMapsLinks' \
'https://places.googleapis.com/v1/places:searchText'

Phản hồi có dạng:

{
  "places": [
    {
      "formattedAddress": "San Francisco, CA 94128, USA",
      "displayName": {
        "text": "San Francisco International Airport",
        "languageCode": "en"
      },
      "googleMapsLinks": {
        "placeUri": "https://maps.google.com/?cid=11885663895765773631",
        "directionsUri": "https://www.google.com/maps/dir//''/data=!4m7!4m6!1m1!4e2!1m2!1m1!1s0x808f778c55555555:0xa4f25c571acded3f!3e0",
        "writeAReviewUri": "https://www.google.com/maps/place//data=!4m3!3m2!1s0x808f778c55555555:0xa4f25c571acded3f!12e1",
        "reviewsUri": "https://www.google.com/maps/place//data=!4m4!3m3!1s0x808f778c55555555:0xa4f25c571acded3f!9m1!1b1",
        "photosUri": "https://www.google.com/maps/place//data=!4m3!3m2!1s0x808f778c55555555:0xa4f25c571acded3f!10e5"
      }
    }
  ]
}

Bạn không cần phải trả về tất cả các đường liên kết trong câu trả lời. Ví dụ: nếu bạn chỉ muốn đường liên kết đến ảnh trong phản hồi, hãy sửa đổi mặt nạ trường như minh hoạ bên dưới để chỉ bao gồm trường photosUri:

curl -X POST -d '{
  "textQuery" : "San Francisco International Airport"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel,places.googleMapsLinks.photosURI' \
'https://places.googleapis.com/v1/places:searchText'

Thêm đường đi vào câu trả lời

Tất cả các phương thức Places đều hỗ trợ việc tạo đường liên kết chỉ đường trong phản hồi. Vị trí hiện tại được dùng làm điểm xuất phát, vị trí của địa điểm được dùng làm điểm đến và chế độ di chuyển là lái xe.

Ví dụ tiếp theo sử dụng tính năng Tìm kiếm lân cận (Mới) để đưa đường liên kết chỉ đường trên bản đồ vào phản hồi trong trường directionsUri:

curl -X POST -d '{
  "includedTypes": ["restaurant"],
  "maxResultCount": 10,
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": -33.8688,
        "longitude": 151.1957362},
      "radius": 500.0
    }
  }
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key:API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.googleMapsLinks.directionsUri' \
https://places.googleapis.com/v1/places:searchNearby

Bản phát hành này thêm trường googleMapsUri vào các đối tượng ReviewsPhotos trong phản hồi. Khi bạn duyệt xem các đường liên kết này, bài đánh giá hoặc ảnh sẽ mở ra trong Google Maps.

Ví dụ: Text Search (Mới) sau đây bao gồm các bài đánh giá và ảnh cho từng địa điểm trong phản hồi:

curl -X POST -d '{
  "textQuery" : "Spicy Vegetarian Food in Sydney, Australia"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.reviews,places.photos' \
'https://places.googleapis.com/v1/places:searchText'

Trong phản hồi, mỗi phần tử của mảng bài đánh giá và ảnh đều chứa trường googleMapsUri để mở bài đánh giá hoặc ảnh trong trình duyệt.

Hãy dùng thử!

API Explorer cho phép bạn đưa ra các yêu cầu mẫu để làm quen với API và các lựa chọn API.

  1. Chọn biểu tượng API ở bên phải trang.

  2. Bạn có thể mở rộng Hiện các tham số chuẩn và đặt tham số fields thành mặt nạ trường.

  3. Bạn có thể chỉnh sửa Nội dung yêu cầu (không bắt buộc).

  4. Chọn nút Thực thi. Trong hộp thoại, hãy chọn tài khoản mà bạn muốn dùng để đưa ra yêu cầu.

  5. Trong bảng điều khiển API Explorer, hãy chọn

    Toàn màn hình để mở rộng cửa sổ API Explorer.