【问题标题】:Firebase database user uid [closed]Firebase 数据库用户 uid [关闭]
【发布时间】:2018-07-19 02:52:58
【问题描述】:

这是错误无法转换类型'字符串预期参数类型'用户'的值 var 用户:用户? 文件私有函数 fetchUser() {

    let uid = user ?? (Auth.auth().currentUser?.uid ?? "")

   // guard let uid = Auth.auth().currentUser?.uid else { return }

    Database.fetchUserWithUID(uid: uid) { (user) in
        self.user = user
        self.navigationItem.title = self.user?.username

        self.collectionView?.reloadData()

        self.paginatePosts()
    }
}

【问题讨论】:

  • 您的问题不清楚。举例说明。
  • 您可以添加任何详细信息,例如:使用的代码,遇到的错误问题吗? How do I ask a good question?, How to create a Minimal, Complete, and Verifiable example 向社区展示你的尝试。
  • 这一行let uid = user ?? (Auth.auth().currentUser?.uid ?? "") 不起作用。 uid 要么是用户 object,如果它不是 nil 或者如果它是 nil,那么它是一个字符串?然后 Database.fetchUserWithUID(uid: uid) 如果它是一个有效的用户 object 将不起作用,因为 Database.fetchUserWithUID 需要一个字符串参数.

标签: swift xcode firebase firebase-realtime-database


【解决方案1】:
    Auth.auth().signInAndRetrieveData(with: credential) { (authResult, error) in
        if let error = error {
            // ...
            return
        }
        let uuid = Auth.auth().currentUser!.uid
    }

试试这个。它可能会解决您的问题

【讨论】:

    【解决方案2】:

    当您登录 Firebase 控制台时,UID 应该会显示在此处。你也可以通过android编程获取用户UID,如下所示:-

    FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
    String uid = user.getUid();
    

    【讨论】:

    • 它不允许我使用 FirebaseUser
    • 我可以得到你的错误/日志吗?
    • 看代码
    猜你喜欢
    • 2016-11-01
    • 2017-10-06
    • 1970-01-01
    • 2021-02-09
    • 1970-01-01
    • 1970-01-01
    • 2020-08-24
    • 1970-01-01
    • 2017-07-26
    相关资源
    最近更新 更多