如何在新的Places API结算中处理会话?

时间:2019-01-30 02:31:11

标签: google-maps google-places-api

新的Places API计费定义了用于合并自动填充和位置明细请求的会话,但是文档只是说API将在几分钟之内合并具有相同会话令牌的请求。

我觉得这很模糊!

我们是否必须生成新的会话令牌,还是可以重用相同的令牌,API仍将在时间窗口内对它们进行分组?

我们是否需要了解会话令牌的寿命?

会话令牌可以是任何字符串吗?

1 个答案:

答案 0 :(得分:1)

Google拥有所有这些答案,但分布在许多不同的地方,很难找到。要回答您的所有3个问题,

  

我们是否必须生成新的会话令牌,还是可以重用相同的令牌,API仍将在时间窗口内对它们进行分组?

会话令牌不能从一个会话重用到另一会话。

  

我们是否必须了解会话令牌的寿命?

会话在用户开始输入时开始,并在用户选择地点并调用详细信息API时结束。一旦发生这种情况,您必须为每次自动完成API的每次调用生成一个新的会话令牌。

  

会话令牌可以是任何类型的字符串吗?

Google Places API提供了您可以使用的类,但您不必这样做。 Google提供的类称为AutocompleteSessionToken,它可以像这样使用:

var token = new google.maps.places.AutocompleteSessionToken()

但是您也可以使用自己的字符串。参见Google's recommendation

所有这些信息直接来自Google文档,请参见下文:

  

场所自动完成功能使用会话令牌将用户自动完成搜索的查询和选择阶段分组到一个单独的会话中,以进行计费。该会话在用户开始键入查询时开始,并在他们选择位置时结束。每个会话可以有多个查询,然后是一个位置选择。会话结束后,令牌将不再有效;您的应用必须为每个会话生成一个新令牌。我们建议对所有自动完成的会话使用会话令牌。如果省略了sessiontoken参数,或者您重复使用了会话令牌,则将对会话进行收费,就像没有提供会话令牌一样(每个请求均需单独计费)。

来源:Google Documentation