vjy*_*vjy 14 ios firebase firebase-authentication
我们正在开发一款使用Google进行身份验证的iOS应用.根据https://www.firebase.com/docs/ios/guide/user-auth.html#section-login,Firebase说auth令牌每24小时到期一次.我们想知道以下情况是否需要考虑:
我们似乎必须通过观察每个https://www.firebase.com/docs/ios/guide/user-auth.html#section-monitoring-authentication的身份验证更改来重新验证Firebase .但是,我们是否必须从上面#5向Firebase重新发出相同的请求?似乎我们可以在cancelBlock中重新验证:
[ref observeEventType:FEventTypeValue withBlock:^(FDataSnapshot *snapshot) {
NSLog(@"%@", snapshot.value);
} withCancelBlock:^(NSError *error) {
NSLog(@"%@", error.description);
// reauthenticate and then re-issue request?
}];
Run Code Online (Sandbox Code Playgroud)
这不是理想的,因为我们必须在我们发出请求的任何地方编写此代码.
处理这种情况的最佳做法是什么?Firebase会在到期时自动刷新身份验证令牌吗?
显然,问题是关于旧版本的 Firebase 及其 SDK。当前版本的 Firebase (3.X) 让您更轻松,因为 Firebase 会记住用户上次登录应用的方式。
FIRApp.configure()因此,您应该像往常一样简单地调用,
application: didFinishLaunchingWithOptions launchOptions:例如在您的应用程序中添加一个状态侦听器,例如
FIRAuth.auth()?.addStateDidChangeListener() { (auth, firUser) in
// do something with firUser, e.g. update UI
}
Run Code Online (Sandbox Code Playgroud)
然后,每当您的用户发生变化并且 Firebase 在后台处理令牌时,Firebase 将在您的应用程序启动时自动调用侦听器,即您不必处理过期的令牌。(如果您使用自定义身份验证系统,可能会更复杂)。
| 归档时间: |
|
| 查看次数: |
2199 次 |
| 最近记录: |