Firebase 遇到一些相当奇怪的问题。我已经通过 cocoaPods 安装了 firebase,包括 GoogleService-Info.plist 等 - 但是当我尝试从 Firebase 读取值时,出现此错误:
2016-06-16 12:10:04.598 MP[78421:13128189] [FirebaseDatabase] 身份验证失败:invalid_token(身份验证令牌中的声明“aud”无效。)
每次我尝试开始一个新项目时,我都会得到这个,除了一次 - 但我现在放弃了那个项目,因为我正在开始一个新项目。这是简单的代码:
import UIKit
import Firebase
import FirebaseDatabase
class ViewController: UIViewController {
var ref:FIRDatabaseReference!
override func viewDidLoad() {
super.viewDidLoad()
ref = FIRDatabase.database().reference()
ref.observeSingleEventOfType(.Value) { (snapshot:FIRDataSnapshot) in
var val = snapshot.value! as? String
print(val)
}
}
}
我怎样才能解决这个问题?
此错误消息表明令牌中的项目与您的应用程序连接到的项目不匹配。来自一个在 firebase-talk 组上发帖:
有几种方法可以实现此目标:
-
您已将 GoogleService-Info.plist 更改为指向不同的项目,但您的应用程序仍然具有上次运行时的缓存令牌。
-
我相信 iOS 模拟器在应用程序之间共享钥匙串,因此如果您有多个使用 Firebase 的应用程序,一个应用程序可能会获取另一个应用程序缓存的令牌。这only发生在模拟器中,我们正在努力更改 Firebase SDK 以避免这种情况。
无论哪种情况,您都可以通过执行明确的操作来解决问题signOut()
在初始化 Firebase 数据库之前调用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)