Swift / Firebase数据库无效令牌错误

时间:2016-06-16 10:54:43

标签: firebase firebase-realtime-database firebase-authentication

遇到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)
        }
    }
}

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:6)

此错误消息表示令牌中的项目与您的应用程序所连接的项目不匹配。来自post on the firebase-talk group

  

有几种方法可以达到这个目的:

     
      
  1. 您已将GoogleService-Info.plist更改为指向其他项目,但您的应用仍然具有上一次运行的缓存令牌。

  2.   
  3. 我相信iOS模拟器共享应用程序之间的钥匙串,因此如果您有多个使用Firebase的应用程序,则一个应用程序可能会选择另一个应用程序缓存的令牌。此在模拟器中发生,我们正在努力更改Firebase SDK以避免此情况。

  4.         

    在任何一种情况下,您都可以在初始化Firebase数据库之前通过明确signOut()调用来解决此问题。