使用python从Firebase存储下载文件链接
似乎firebase python API的文档非常缺乏。我想做的是通过我的Flask应用程序获得firebase存储中文件夹中所有文件的下载链接。我最近的做法是:使用python从Firebase存储下载文件链接,python,firebase,flask,firebase-storage,Python,Firebase,Flask,Firebase Storage,似乎firebase python API的文档非常缺乏。我想做的是通过我的Flask应用程序获得firebase存储中文件夹中所有文件的下载链接。我最近的做法是: 来自firebase\u管理导入存储 bucket=storage.bucket() blob=bucket.blob('articles/'+aid+'/resources')) 服务器\u路径=blob.generate\u签名\u url(datetime.timedelta(seconds=99999999),方法='GET
来自firebase\u管理导入存储
bucket=storage.bucket()
blob=bucket.blob('articles/'+aid+'/resources'))
服务器\u路径=blob.generate\u签名\u url(datetime.timedelta(seconds=99999999),方法='GET')
打印(服务器路径)
问题是blob=bucket.blob('articles/'+aid+'/resources')
指向存储中的一个文件夹,当我试图获取该文件夹的下载链接时,该链接不起作用
现在我可以用两种不同的方法来解决这个问题:
- 找到一种方法压缩文件夹a,然后获得下载链接
- 列出文件夹中的文件,然后获取每个文件的下载链接
另外,我已经在使用firebase_admin初始化我的应用程序,我不想切换到pyrebase或其他第三方库。好的,我更仔细地阅读了firebase_admin文档,它说: 您可以在中使用AdminSDK返回的bucket引用 与官方的Google云存储客户端库一起 上载、下载和修改与关联的存储桶中的内容 你的Firebase项目。请注意,您不必进行身份验证 使用Firebase Admin SDK时使用Google云存储库。这个 管理员SDK返回的bucket引用已经过身份验证 使用用于初始化Firebase应用程序的凭据 因此,我访问了google.cloud文档,使用了他们的代码,而不必初始化google.cloud存储,只需将其作为存储firebase_admin之一传递。因此,要列出bucket中的所有对象:
好的,我更仔细地阅读了firebase_管理文档,它说: 您可以在中使用AdminSDK返回的bucket引用 与官方的Google云存储客户端库一起 上载、下载和修改与关联的存储桶中的内容 你的Firebase项目。请注意,您不必进行身份验证 使用Firebase Admin SDK时使用Google云存储库。这个 管理员SDK返回的bucket引用已经过身份验证 使用用于初始化Firebase应用程序的凭据 因此,我访问了google.cloud文档,使用了他们的代码,而不必初始化google.cloud存储,只需将其作为存储firebase_admin之一传递。因此,要列出bucket中的所有对象:
blobs = list(bucket.list_blobs())