在 Firebase 存储中搜索不带扩展名的文件

yur*_*loc 5 google-cloud-storage firebase firebase-storage

是否可以仅通过名称搜索文件而不知道其扩展名(jpg 或 png)?

所有文档都使用 filename.extension。

Mik*_*ald 6

从技术上讲,Google Cloud Storage 中的“文件”只是一个名称可能包含类似于“文件”、“文件夹”或“文件路径”的内容的对象。这意味着它foo同样有效foo.txtpath/to/foo.txt更多关于对象命名的信息请参见此处)。我们在文档中使用扩展名只是因为大多数开发人员都熟悉具有某种扩展名的文件,并且我们不想让路径看起来任意或像文件以外的东西。

list为了进行搜索,GCS 在其API(文档)中具有前缀匹配的概念,这将允许您查询诸如“给我所有前缀为 的文件”之类的内容path/to/foo,该文件将返回foo和 ,foo.txt如果两者path/to/foopath/to/foo.txt存在。

Firebase Storage 选择不公开列表 API 有几个原因,但主要是因为:

  1. 我们引入了类似文件/文件夹的层次结构,这使得该功能的功能有所不同
  2. 当用户可能无法访问所有文件时,列出文件会出现问题(您是否返回部分集或什么也不返回?)
  3. 我们有一个实时数据库,可用于存储 URL 列表,这些 URL 列表可以轻松存储并在几毫秒内跨设备同步。

如果您决心这样做,可以使用 GCS listAPI,或在服务器上使用GCloud 。