[英]Is it possible to cache the auth token to speed up login in Firebase with iOS?
我在iOS中使用FirebaseSimpleLogin
和电子邮件/密码身份验证对Firebase进行身份验证。 似乎使[authClient loginWithEmail:username andPassword:password withCompletionBlock:^(NSError *error, FAUser *user) { ... }];
大约需要5-8秒才能完成。
有没有办法加快登录速度,比如从FAUser
缓存authToken
,并在第一次Firebase调用中直接使用它?
更新:
似乎在成功登录NSUserDefaults
后存储authToken
:
[[NSUserDefaults standardUserDefaults] setValue:user.authToken forKey:USERDEFAULTS_LOGIN_TOKEN];
[[NSUserDefaults standardUserDefaults] synchronize];
...然后执行authWithCredential:
在下次登录尝试时使用存储的authToken
进行调用:
NSString *authToken = [[NSUserDefaults standardUserDefaults] stringForKey:USERDEFAULTS_LOGIN_TOKEN];
if (authToken) {
NSLog(@"Firebase logging in with token...");
[[Mesh root] authWithCredential:authToken withCompletionBlock:^(NSError *error, id data) { ...
......不是更快。 有没有其他方法可以加快登录速度?
随着Firebase iOS / OS-X Client v1.2.0的发布,Firebase缓存了本地客户端身份验证状态,并极大地优化了重新身份验证的速度。 以前的客户端版本在客户端进入“已验证”状态之前需要多次服务器往返,但如果有效的持久会话位于磁盘上,则现在立即生效。
另请注意, Firebase Simple Login已被弃用,并替换为在核心Firebase客户端库中启用的Firebase身份验证的重新实现。 请访问https://www.firebase.com/docs/ios/guide/user-auth.html ,查看有关如何在iOS上开始使用它的指南。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.