如何在最新的Firebase IOS SDK中获取Firebase JWT令牌以在服务器端进行验证

时间:2016-05-23 09:27:57

标签: ios firebase firebase-authentication

我正在尝试使用firebase基本身份验证和我的自定义后端服务器的新Firebase IOS SDK。我已在firebase中启用了用户名密码验证,但工作正常,但我没有在auth对象上看到任何属性,它给了我JWT令牌,以便我可以验证自定义后端服务器上的请求

FIRAuth.auth()?.createUserWithEmail(singupusername.text!, password: singuppassword.text!) { (user, error) in
            print(user)
            print(error)
        }

用户没有任何属性可以为我提供firebase JWT令牌

2 个答案:

答案 0 :(得分:1)

我想出了在最新的SDK中获取访问令牌的方法,我在下面的方法中使用了获取最新的令牌

 FIRAuth.auth()?.addAuthStateDidChangeListener { auth, user in
            if let user = user{
                user.getTokenWithCompletion{
                    (data) in
                    print(data.0)
                }
            }
        }

答案 1 :(得分:0)

最新代码应为

let currentUser = Auth.auth().currentUser
currentUser?.getIDTokenForcingRefresh(true) { idToken, error in
    if let error = error {
        // Handle error
        return;
    }

    // Send token to your backend via HTTPS
    // ...
    print("JWT is< \(idToken)>")
            
}