地点网络服务常见问题解答

本文档包含对 Places API。如果您找不到针对您的 以下页面可能对您有所帮助。

Places API 还有一个充满生气的开发者社区。如果对您的代码有任何疑问,建议您将问题发布到该社区中。如需详细了解如何提问,请参阅支持页面

搜索地点

按照类型过滤时,为什么系统未返回某些地点?

可能是因为您所查找的地点尚未分类。 所有地点均被默认归类为通用类型“establishment”,直到 Google 掌握关于该地点的足够数据,以将其归类为某个受支持的地点类型

解决方法之一是,您可以将地点 type 传递给 keyword 参数。通过 keyword 参数与以下内容进行匹配:名称、类型、地址和客户评价。

如果您希望自行将类别 type 添加到地点商家信息中, 提交地点修改。地点编辑经过批准和发布之后,系统将使用正确的 type 过滤条件显示此地点。

为什么系统未返回某些附近地点?

默认情况下,Places API 会对指定 radius 范围内的结果按 prominence 排序。附近搜索 请求最多可返回 60 个结果,分三页显示。如果某个地点 在prominence中排在第 22 位,那么它就会显示在搜索结果的第二页, 您可以 分页。如果某个地点 在 prominence 中排名超过 60 的用户不会被纳入到搜索范围内 即使该位置更接近搜索内容的中心位置,

通过在查询中将 rankby 参数设置为 distance 并忽略 radius 参数,可以按照 distance(而非按照 prominence)对结果进行排序。系统将忽略相关性,并按照 距离location的距离。

如果您按类型过滤请求,某些结果可能会被滤除, 响应。有关详情,请参阅常见问题解答条目: 为什么按照类型过滤时系统未返回某些地点?

按照某些 types 过滤时,为什么只接收到最多两个结果?

Places API 旨在返回附近地点的列表 establishments(从第一个 table)和最多两个位置(从 第二个表格 支持的地点类型)结果,以帮助识别您正在执行的区域 附近搜索请求。

按位置 type 过滤附近搜索请求, (例如 localitypolitical)会过滤掉 establishment 结果。

地点数据

如何添加或修改地点?

如果您是商家所有者,可以使用商家资料在 Google 地图中添加、验证和管理商家信息。

即使您不是该地点的所有者,仍然可以提出更改建议

问题排查

为什么我不断接收“状态”为“REQUEST_DENIED”的请求?

"status": "REQUEST_DENIED" 由 在以下情况下使用 Places API:

  • 您尚未在 Google Cloud 控制台中激活 Places API。
  • 您的请求缺少 key 参数。
  • key 参数与您在 Google Cloud 控制台
  • 您未在 Google Cloud 控制台中正确设置 API 密钥:
    • 如果您使用的是具有浏览器限制的 API 密钥,请检查 引荐来源正确。
    • 如果您使用的是具有服务器限制的 API 密钥,请检查允许的 IP 是否正确。
    • 不支持具有 Android 或 iOS 限制的 API 密钥。请使用通用(不受限的)API 密钥,或者具有浏览器或服务器限制的密钥。
  • 该请求不是以 HTTPS 请求的形式发送的,HTTPS Places API 请求。
  • 发送此请求所使用的 HTTP method 不正确:
    • 所有请求都必须以 GET 请求的形式发送,除了 [地点添加][place-add]。
    • 所有[地点添加][place-add] 请求都必须以 POST 请求的形式发送。