热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

控制台中有关权限被拒绝的警告(Firebase)

如何解决《控制台中有关权限被拒绝的警告(Firebase)》经验,为你挑选了3个好方法。

这是我的代码:

var handler:FIRDatabaseHandle!
override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)

    self.handler = self.ref.observe(.value, with: {[weak self] (snapshot) in
        var _tasks = Array()
        for item in snapshot.children {
            let task = Task(snapshot: item as! FIRDataSnapshot)
            _tasks.append(task)
        }

        self?.tasks = _tasks
        self?.tableView.reloadData()
    })
}

override func viewDidDisappear(_ animated: Bool) {
    super.viewDidDisappear(animated)
    self.ref.removeAllObservers()
}

所以当我离开这个控制器(实际上我退出)时,我会在控制台中看到下一个警告:

[Firebase /数据库] [I-RDB04822]/users/ovLWTmGIPFaF6DaLzrPBBr13 /任务的监听器失败:permission_denied

Gabriele Mar.. 15

这是因为您未获得数据库授权.
您有一个侦听器附加到它没有权限的位置.

检查Realtime数据库中的Rules选项卡

如果它是

{
  "rules": {
    ".read": "auth != null",
    ".write":"auth != null"
  }
}

这意味着只有授权用户才能写入和读取数据.

改为

{
  "rules": {
    ".read": true,
    ".write":true
  }
}

允许任何人读/写数据库.
当然,它(通常)不是生产环境的有效规则,但检查您的问题很有用.



1> Gabriele Mar..:

这是因为您未获得数据库授权.
您有一个侦听器附加到它没有权限的位置.

检查Realtime数据库中的Rules选项卡

如果它是

{
  "rules": {
    ".read": "auth != null",
    ".write":"auth != null"
  }
}

这意味着只有授权用户才能写入和读取数据.

改为

{
  "rules": {
    ".read": true,
    ".write":true
  }
}

允许任何人读/写数据库.
当然,它(通常)不是生产环境的有效规则,但检查您的问题很有用.



2> Frank van Pu..:

这意味着侦听器将附加到未经许可的位置。

您也可以放心地忽略日志记录,因为您不再需要关心数据了。

但是,如果您希望使用干净的日志:为了防止记录日志,请确保在注销之前注销观察者的注册。为此,请致电removeObserver(withHandle:...)或(在这种情况下可能会更容易)removeAllObservers



3> Khawar Islam..:

请查找图像并按照以下步骤操作。如果您是初学者,并且在图像中面临问题。我制作了一些关于错误的视频。

视频解决方案: https : //youtu.be/fZrOkCqQpTc

图像解决方案:


推荐阅读
author-avatar
手机用户2602905005
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有