我使用 firebase 身份验证保护了一个 REST API,并注意到在处理请求时,会话 cookie 的验证花费了大部分时间。这是调用看起来像:
firebase
.auth()
.verifySessionCookie(sessionCookie, CHECK_REVOKED)
.then(decodedClaim => /* continue serving the request... */)
对于每次验证调用,探查器都会向 Firebase 后端显示一个相当慢的 HTTPS 请求。
问题是传递给验证函数的CHECK_REVOKED
参数。它将强制 firebase 始终检查身份验证后端中是否存在已撤销的会话(例如,当密码更改发生时(。当CHECK_REVOKED
设置为false
(或根本不通过,它是可选的(时,Firebase 身份验证将缓存会话验证结果。