【问题标题】:Google Places API - Place ID formatGoogle Places API - 地点 ID 格式
【发布时间】:2015-03-22 23:53:20
【问题描述】:

我需要在我的数据库中存储一些 Place IDs。不幸的是,没有关于 Place ID 格式的文档。基本上,我的意思是最大(或固定)长度和有效字符(即验证地点 ID 形式正确性的正则表达式)。换句话说,我需要知道是否必须使用 CHAR(n) 或 VARCHAR(n) 以及列的适当检查约束。

看起来它们总是 urlsafe Base64 字母表的 27 个字符(- 而不是 +_ 而不是 /),但我不能 100% 确定,因为这方面不是记录在案。

有人能解释一下吗?

【问题讨论】:

标签: google-maps google-places-api


【解决方案1】:

很遗憾,我无法为您提供有关 PlaceID 的文档 - 如果 Google 能够确定它,我很乐意看到一些文档。我确实想指出,当前 PlaceID 的长度是 40 个字符,而不是 27 个。

我对您的建议(以及我在自己的数据库中接受的建议)是不要限制您的 PlaceID 字段的大小,并使用 Nvarchar 来最大化 Google 将来可能选择使用的字符。

由于 Google 目前没有承诺任何限制,我认为如果假设它们将保持当前格式,您将承担风险。

【讨论】:

  • 你错了。只有 ID 长度为 40 个字符,PlaceID 长度为 27。
  • 你错了。让我告诉你 Jennifer,也就是刚刚破坏了我的系统的 PlaceID:EjEyNCBKZW5uaWZlciBIaWxsIFJkLCBMYWdyYW5nZXZpbGxlLCBOWSAxMjU0MCwgVVNB
  • @VajkHermecz 您的 PlaceID 不再起作用。但在“可能重复的stackoverflow.com/questions/24430241/…”中有一些甚至更长。
  • @VajkHermecz 哦,似乎是复制粘贴错误。复制您的地点 ID 在“xMjU0”之后有一个隐藏字符,该字符在每个编辑器中都不可见。
【解决方案2】:

当前的documentation(最后更新于 2019 年 6 月 20 日)指出地点 ID 的长度各不相同,并且(目前)可以从 27 个字符一直到 60 个字符。

地点 ID 是唯一标识地点的文本标识符。标识符的长度可能会有所不同。例子:

ChIJrTLr-GyuEmsRBfy61i59si0

EisxMyBNYXJrZXQgU3RyZWV0LCBXaWxtaW5ndG9uLCBOQyAyODQwMSwgVVNB

【讨论】:

  • 您在哪里看到它可以从 27 个字符一直跨越到 60 个字符?他们的文档中没有这样的声明。
  • @inafalcao 单击我发布的链接,检查他们提供的示例并测量它们的长度。关键是placeID 的长度各不相同,而且它们似乎并不都遵循相同的“格式”。我刚刚再次检查了文档,现在最长的示例是 92 个字符。 EicxMyBNYXJrZXQgU3QsIFdpbG1pbmd0b24sIE5DIDI4NDAxLCBVU0EiGhIYChQKEgnRTo6ixx-qiRHo_bbmkCm7ZRAN
【解决方案3】:

PLACE_ID 在 SQL 结构中至少应为 512。

这是一个长度为 315 的有效 ID: 'EsIBS0FWLjc2LTc4LCBJbmRvZm9vZCBUb3dlciwgU3VkaXJtYW4gUGxhemEsIEpsLiBKZW5kLiBTdWRpcm1hbiBOby43Ni03OCwgUlQuMy9SVy4zLCBLdW5pbmdhbiwgU2V0aWEgQnVkaSwgS2VjYW1hdGFuIFNldGlhYnVkaSwgS290YSBKYWthcnRhIFNlbGF0YW4sIERhZXJhaCBLaHVzdXMgSWJ1a290YSBKYWthcnRhIDEwMjUwLCBJbmRvbmVzaWEiJRojChYKFAoSCSH20UED9GkuEc707mF-vRHxEglLQVYuNzYtNzg' P>

我个人使用带有查找表的 PLACE_ID 的 SHA256 固定长度唯一字段。 无论哪种方式,至少 512。

标记

【讨论】:

    【解决方案4】:

    google API 中的 placeId 有一些变化。 查看 Google Doc 以了解更多信息。 如果需要任何关于地点自动完成的示例和文档。

    http://www.w3docs.com/learn-javascript/places-autocomplete.html

    【讨论】:

      【解决方案5】:

      我根据我的服务地点系统做了同样的注册频繁地点,推荐的东西看到 27、60 和 92 之间的变化。

      我把它留在了 256 岁(有成长或改变原型的可能性)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-06-12
        • 2016-11-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-02-13
        • 1970-01-01
        相关资源
        最近更新 更多