Google 地图链接

Places API(新)可通过多种方法接受地点数据请求。Places API(新)响应包含有关地点的数据,包括位置数据和图像、地理位置以及著名的地图注点。

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

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

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

  • 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 字段。

例如,以下文本搜索(新)请求会在响应中包含所有 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 方法都支持在响应中生成路线链接。当前位置用作出发地,地点位置用作目的地,出行方式为驾车。

以下示例使用“附近搜索(新)”在 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

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

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

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. (可选)展开显示标准参数,然后将 fields 参数设置为字段掩码

  3. 您可以视需要修改请求正文

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

  5. 在 API Explorer 面板中,选择

    全屏以展开 API Explorer 窗口。