google-maps - 新的 Places API 会话令牌可以使用多长时间?
问题描述
我有一个在多个页面上使用地址自动完成功能的网站——地址簿、送货地址、帐单地址。随着下个月发布的计费更改,我们可以将自动完成过程转换为使用会话而不是单独的击键。(https://cloud.google.com/maps-platform/user-guide/pricing-changes/#billing-changes)
- AutocompleteSessionToken 的有效期是多久?当前页面?一小时?十二?永久地,每次它在新的一个月出现时都计入限制?
- 如果会话令牌确实过期了,并且我们通过请求发送该令牌,结果会是什么?如果客户将网页打开一天后回来取货,而我们的会话数据尚未过期,我们如何确保他们不会收到自动完成错误?
解决方案
据我所知,Google Maps Platform 中没有关于 Places API 会话持续时间的官方文档。我可以分享一些从技术支持获得的会话信息,但是,它没有提供会话持续时间的确切值,而且 Google 似乎不会透露确切值。
首先,如果您使用 Maps JavaScript API 的内置 Autocomplete 小部件,它会自动为您生成会话,因此无需担心。
如果您创建自己的小部件,您应该知道会话不会持续很长时间。一个自动完成会话包括一些自动完成请求(以在用户键入时检索有关地点的建议)和最多一个“地点详细信息”请求(以检索有关用户选择的地点的详细信息)。
相同的会话令牌被传递给自动完成和随后的地点详细信息请求。
会话从第一个自动完成请求开始(通常在用户开始输入时发生)。通常,在用户选择了其中一个自动完成建议后会调用 Places Details。
在用户选择了一个地点后(例如,调用了 Places Details),必须使用一个新的会话令牌启动一个新会话。
一个会话令牌不能用于多个用户会话。如果重复使用令牌,则会话将被视为无效,并且请求将被收取费用,就好像没有提供会话令牌一样。
如果会话令牌过期或失效,您将按每次击键付费。因此,每个自动完成请求都将被收取费用。
我希望这个信息对您有所帮助。
推荐阅读
- mysql - 无法为 mariadb 客户端使用 SSL 和 TLS 连接
- mxgraph - 如何将多个步骤合并为一个撤消/重做?
- javascript - Laravel 没有获取所有请求数据
- arduino - Arduino兼容芯片,无需晶体进行串行通信
- html - Django 和 HTML:导航栏周围多余空间的问题
- php - 解析错误:语法错误,第 13 行 E:\xampp\htdocs\study\connect.php 中的意外“值”(T_STRING)
- python - 将 Torchvision ImageFolder 与测试集一起使用
- python - numpy数组的矢量化“逐层”缩放
- mojarra - 在 h:link 中包含视图参数
- hadoop-yarn - 如何在 dask-yarn 中配置 nthreads