Firebase在云存储中创建引用

本文概述

  • 创建引用
  • 创建子引用
  • 在我们的文件层次结构中向上导航
  • 检查引用
【Firebase在云存储中创建引用】当我们使用Firebase Cloud Storage时, 所有文件都存储在Google Cloud Storage存储桶中。就像本地硬盘中的文件系统或Firebase Realtime数据库中的数据一样, 文件以存储桶中的层次结构显示。
通过创建文件引用, 我们的应用可以访问:
  1. 上传或下载数据。
  2. 获取或更新元数据。
  3. 删除文件。
引用可以指向特定文件, 也可以指向层次结构中的更高级别的节点。这些路径与Firebase实时数据库路径非常相似。唯一的区别是我们的文件数据存储在Google Cloud Storage中, 而不是实时数据库中。
Firebase在云存储中创建引用

文章图片
创建引用 可以将引用视为指向云中文件的指针:
  1. 轻巧, 因此我们可以根据需要创建任意数量的对象。
  2. 可重复用于多种操作。
引用是使用FirebaseStorage单例实例创建的, 并将使用getReference()方法对其进行调用。
//Creating a storage reference from our app var storageRef=storage.reference

创建子引用 我们可以创建对树中较低位置的引用。例如, 通过在现有引用上使用getChild()方法来生成“ images / season.jpg”。
//Creating a child reference. The imagesRef will points to "images". var imagesRef:StorageReference?=storageRef.child

子引用也将采用路径。现在, mountainRef指向“ images / mountain.jpg”, 而imagesRef仍指向“ images”。
var mountainRef=storageRef.child("images/mountain.jpg")

在我们的文件层次结构中向上导航 在文件层次结构中有两种向上导航的方法, 即getParent()和getRoot()。 getParent()向上导航一层, 而getRoot()一直导航到顶部。
父级允许我们将引用移动到父级节点, 而imagesRef现在指向“ images”。
imagesRef=spaceRef.parent

根目录使我们可以一直返回到存储桶的顶部, 并且rootRef现在指向根目录。
val rootRef = spaceRef.root

引用可以多次链接在一起, mountainRef指向“ images / mountain.jpg”。
val mountainRef = spaceRef.parent?.child("mountain.jpg")

如果nullRef为null, 则root的父级为null
val nullRef = spaceRef.root.parent

检查引用 我们可以检查引用以更好地理解它们指向的文件。 getPath(), getName()和getBucket()方法将获取文件的完整路径, 名称和存储桶。引用路径是“ images / space.jpg”, 它类似于文件名。
spaceRef.name

引用的存储桶是文件存储在其中的存储桶
spaceRef.bucket

    推荐阅读