Google 地图链接

Places API (New) 接受通过各种方法发出的地点数据请求。Places API (New) 响应包含有关地点的数据,包括位置数据和图像、地理位置以及显著的兴趣点。

“文本搜索 (New)”、附近搜索 (New) 和“地点详情 (New)”的响应还可以包含指向 Google 地图的链接。 您的用户可以浏览这些 Google 地图链接,以查看响应中有关地点的其他信息。

例如,您搜索加利福尼亚州旧金山的机场。然后,响应会在地点列表中包含旧金山国际机场 (SFO)。 响应中 SFO 的 Place 对象会添加 googleMapsUri 字段,其中包含 Google 地图链接,用于打开 Google 地图以显示该地点、前往该地点的路线、该地点的评价以及该地点的照片。

除了添加到 Place 对象的链接之外,googleMapsUri 字段还会添加到响应中的 ReviewsPhotos 对象:

  • Reviews.googleMapsUri:包含指向评价的 Google 地图链接,以便您在浏览器中查看评价。

  • Photos.googleMapsUri:包含指向照片的 Google 地图链接,以便您在浏览器中查看照片。

借助 API Explorer,您可以发出实时请求,以便熟悉这些新选项:

试试看!

下表显示了您可以包含在响应中的 Google 地图链接:

Google 地图链接 说明 字段名称
地点 用于打开 Google 地图以显示该地点的链接。 googleMapsLinks.placeUri
路线 用于在 Google 地图中打开前往该地点的路线的链接。 googleMapsLinks.directionsUri
撰写评价 用于在 Google 地图中为该地点撰写评价的链接。 googleMapsLinks.writeAReviewUri
阅读评价 用于显示 Google 地图中该地点的评价的链接。 googleMapsLinks.reviewsUri
照片 用于显示 Google 地图中该地点的照片的链接。 googleMapsLinks.photosUri

地点响应中的链接包含在 googleMapsLinks 字段中。如果您希望这些链接显示在响应中,请务必在请求的字段掩码中添加 googleMapsLinks 字段。

例如,以下“文本搜索 (New)”在响应中包含所有 Google 地图链接:

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'

响应采用以下格式:

{
  "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"
      }
    }
  ]
}

您不必在响应中返回所有链接。例如,如果您只希望响应中包含照片链接,请修改字段掩码,如下所示,仅包含 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'

在响应中包含路线

所有 Places 方法都支持在响应中生成路线链接。当前位置用作起点,地点位置用作目的地,出行方式为驾车。

下一个示例使用“附近搜索 (New)”在响应的 directionsUri 字段中包含 Google 地图路线链接:

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

此版本将 googleMapsUri 字段添加到响应中的 ReviewsPhotos 对象。浏览这些链接会在 Google 地图中打开评价或照片。

例如,以下“文本搜索 (New)”在响应中包含每个地点的评价和照片:

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'

在响应中,评价和照片数组的每个元素都包含 googleMapsUri 字段,用于在浏览器中打开评价或照片。

试试看!

借助 API Explorer,您可以发出示例请求,以便熟悉 API 和 API 选项。

  1. 选择页面右侧的 API 图标。

  2. 您可以选择展开显示标准参数 ,并将the fields parameter 设置为field mask

  3. 您可以选择修改请求正文

  4. 选择执行 按钮。在对话框中,选择要用于发出请求的账号。

  5. 在 API Explorer 面板中,选择

    全屏 以展开 API Explorer 窗口。