本文档包含有关 Places API 的常见问题解答。如果您在此处找不到问题的答案,则以下某些页面可能会对您有所帮助。
Places API 还有一个活跃的开发者社区。如果您对代码有疑问,建议您向社区发帖提问。如需详细了解如何提问,请参阅支持页面。
搜索地点
为什么在按类型过滤时,系统不会返回某些地点?
您要查找的地点可能尚未归类。
在 Google
掌握足够的数据来将某个地点归类为受支持的地点
类型之一之前,所有地点都会归类为通用类型“establishment”。
作为一种解决方法,您可以将地点 type 传递给 keyword 参数。keyword 参数与名称、类型、地址和客户评价相匹配。
如果您想自行将类别 type 添加到地点信息中,
请提交地点修改。修改获得批准并发布后,系统会使用正确的 type 过滤条件显示该地点。
为什么系统不会返回某些附近的地点?
默认情况下,Places API 会在提供的 radius 内按 prominence 对结果进行排序。“附近搜索”请求最多可以返回 60 条结果,
分三页显示。如果某个地点的 prominence 排名第 22 位,则它会显示
在第二页结果中,您可以通过
分页访问该页面。
如果某个地点的
prominence 排名超过第 60 位,则即使它离搜索中心更近,也不会包含在搜索结果中。
您可以将查询中的 rankby 参数设置为 distance 并省略 radius 参数,从而按 distance 而不是
prominence 对结果进行排序。系统会忽略相关性,并按与 location 的距离顺序返回地点。
如果您按类型过滤请求,则某些结果可能会从响应中过滤掉。如需了解详情,请参阅常见问题解答条目:为什么在按类型过滤时,系统不会 返回某些地点?。
为什么在按某些 types 过滤时,我最多只能收到两个结果?
Places API 旨在返回附近 establishments
(受支持地点类型中的
第一个表
中的任何内容)的列表,以及最多两个地点(受支持地点类型中的
第二个表
中的任何内容)的结果,以帮助您确定要
执行 附近搜索 请求的区域。
按地点 type(例如
locality 或 political)过滤“附近搜索”请求会过滤掉 establishment 结果。
地点数据
如何添加或修改地点?
如果您是商家所有者,则可以使用 商家资料 在 Google 地图上添加、验证和管理商家 信息。
如果您不是地点所有者,仍然可以建议 更改。
问题排查
为什么我一直收到“status”: "REQUEST_DENIED"?
当出现以下情况时,Places API 会返回 "status": "REQUEST_DENIED"
:
- 您尚未在 Google Cloud 控制台 中激活 Places API。
- 您的请求中缺少
key参数。 key参数与 Google Cloud 控制台 中的 API 密钥不匹配。- 您的 API 密钥未在 Google Cloud 控制台中正确设置:
- 如果您使用的是受浏览器限制的 API 密钥,请检查允许的引荐来源网址是否正确。
- 如果您使用的是受服务器限制的 API 密钥,请检查允许的 IP 是否正确。
- 不支持具有 Android 或 iOS 限制的 API 密钥。请使用通用(不受限)API 密钥,或使用具有浏览器或服务器限制的密钥。
- 请求未作为
HTTPS请求发送,所有 Places API 请求都需要HTTPS。 - 使用了错误的
HTTP method来发送请求。