Places API 通过多种方法接受地点数据请求。Places API 响应包含与地点相关的数据,包括位置数据和图像、地理位置和著名景点。
在此次版本中,文本搜索、附近搜索和地点详情中的回答还可以包含指向 Google 地图的链接。用户可以浏览这些 Google 地图链接,在回答中查看与地点相关的更多信息。
例如,您搜索加利福尼亚州旧金山的空港。然后,响应会在地点列表中添加 San Francisco International Airport (SFO)。在此版本中,响应中 SFO 的 Place
对象添加了 googleMapsUri
字段,其中包含用于打开相应地点的 Google 地图链接、前往相应地点的路线、相应地点的评价和地点照片。
除了向 Place
对象添加链接之外,此版本还会向响应中的 Reviews
和 Photos
对象添加 googleMapsUri
字段:
Reviews.googleMapsUri
:包含指向评价的 Google 地图链接,以便您在浏览器中查看评价。Photos.googleMapsUri
:包含指向相应照片的 Google 地图链接,以便您在浏览器中查看。
借助 API Explorer,您可以发出实时请求,以便熟悉这些新选项:
地点支持的 Google 地图链接
下表显示了您可以在响应中添加的 Google 地图链接:
Google 地图链接 | 说明 | 字段名称 |
---|---|---|
地点 | 用于打开 Google 地图并显示相应地点的链接。 | googleMapsLinks.placeUri |
路线 | 用于在 Google 地图中打开前往相应地点的路线的链接。 | googleMapsLinks.directionsUri |
撰写评价 | 指向 Google 地图中相应地点评价页面的链接。 | googleMapsLinks.writeAReviewUri |
阅读评价 | 用于显示相应地点的 Google 地图评价的链接。 | googleMapsLinks.reviewsUri |
相册 | 指向 Google 地图中相应地点照片的链接。 | googleMapsLinks.photosUri |
价格
此功能处于正式发布前预览阶段,在预览期间使用不收费,也就是说,结算金额为 0 美元。如需详细了解拟议的价格,请参阅 Places API 的使用量和结算。
在地点响应中包含所有链接
地点响应中的链接包含在 googleMapsLinks
字段中。如果您希望 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'
在回答中添加路线
所有地点方法都支持在响应中生成路线链接。当前位置用作起点,地点位置用作目的地,且出行方式为驾车。
以下示例使用附近搜索在 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
添加评价和照片链接
此版本在响应的 Reviews
和 Photos
对象中添加了 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 选项。
选择页面右侧的 API 图标 。
(可选)展开显示标准参数,然后将
fields
参数设置为字段掩码。您可以视需要修改请求正文。
选择执行按钮。在对话框中,选择您要使用哪个账号发出请求。
在 API Explorer 面板中,选择展开图标 以展开 API Explorer 窗口。