Firebase id令牌过期时间更长

Firebase id令牌过期时间更长,firebase,firebase-authentication,google-cloud-functions,Firebase,Firebase Authentication,Google Cloud Functions,我有一个在后台跟踪用户位置的应用程序。 每隔几分钟,它就会向firebase发送一个http请求,其中包含数据 所以我创建了一个函数来处理数据(坐标、用户名等),并将其放入数据库中。 这是可行的,但我需要“安全性”,因为每个人都可以在请求中输入一个随机用户名 我学习了ID令牌,以验证用户,但存在一个问题: 提供跟踪的包不会更改id令牌。示例:我想跟踪三个小时,一旦我按开始,程序包将发送三个小时的位置和我按开始时提供的数据(此处:id令牌) 但是如果id令牌过期,包将继续提供旧的id令牌。(因为当

我有一个在后台跟踪用户位置的应用程序。 每隔几分钟,它就会向firebase发送一个http请求,其中包含数据

所以我创建了一个函数来处理数据(坐标、用户名等),并将其放入数据库中。 这是可行的,但我需要“安全性”,因为每个人都可以在请求中输入一个随机用户名

我学习了ID令牌,以验证用户,但存在一个问题:

提供跟踪的包不会更改id令牌。示例:我想跟踪三个小时,一旦我按开始,程序包将发送三个小时的位置和我按开始时提供的数据(此处:id令牌)

但是如果id令牌过期,包将继续提供旧的id令牌。(因为当应用程序关闭时,它无法在后台获取新令牌)

因此,我的问题是:

是否有可能延长id令牌的过期时间?或者是否有其他用户验证方法


谢谢

Firebase身份验证ID令牌的有效期为一小时,并且该持续时间不能更改。你要做的是每小时刷新一次ID令牌。或者,您可以检查来自端点的响应,该响应指示管理员SDK无法验证令牌,因为令牌已过期。在这种情况下,客户端可以立即刷新并重试请求

每个平台的Firebase客户端SDK都有一个用于执行刷新的API。既然你没有说你使用的是哪个平台,我就给你一个链接。将true传递给getIdToken以强制刷新,或者只接受它提供的将是新的内容。其他平台也类似