代码之家  ›  专栏  ›  技术社区  ›  Michel Feinstein

如何在新的地方处理会话?

  •  0
  • Michel Feinstein  · 技术社区  · 5 年前

    我觉得这很模糊!

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

    我们必须知道会话令牌的寿命吗?

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

    0 回复  |  直到 5 年前
        1
  •  1
  •   derickito    5 年前

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

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

    我们必须知道会话令牌的寿命吗?

    会话在用户开始键入时开始,在用户选择一个位置并调用detailapi时结束。一旦发生这种情况,您必须为自动完成API的每个新调用生成一个新的会话令牌。

    googleplacesapi提供了一个可以使用的类,但您不必这样做。Google提供的类称为 AutocompleteSessionToken 可以这样使用:

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

    Google's recommendation

    所有这些信息都直接来自谷歌文档,见下表:

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

    Google Documentation