java - 使用 Java REST API 从 Firebase 存储中上传的文件中获取公共下载 URL
问题描述
我想从 firebase-admin sdk for java 上传的文件(Blob)中获取下载 URL。
我的代码:
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredentials(GoogleCredentials.fromStream(serviceAccount))
.setDatabaseUrl("...")
.build();
FirebaseApp app = FirebaseApp.initializeApp(options);
StorageClient storage = StorageClient.getInstance(app);
Bucket bucket = storage.bucket("...");
Blob blob = bucket.create(...);
因此,通过此代码,我可以将文件上传到 firebase 存储中。但我不知道如何获取下载 URL。我想获取 URL(https://firebasestorage.googleapis.com..)
但是 blob.getMediaLink() 方法返回给我的 URL ( https://www.googleapis.com/download/storage.. ) 是私有的
解决方案
您可以使用Blob.signUrl()创建一个签名 URL,它与 Firebase 客户端 SDK 生成的下载 URL 的作用基本相同。
推荐阅读
- javascript - 鼠标快速移动时鼠标光标在应用程序窗口外
- java - JMockit 验证是否调用了私有方法
- core-data - CoreData 与关系 - 如何避免重复更新
- c# - 我缺少什么统一/C#?
- amazon-web-services - AWS IAM 策略中拒绝“ListAccounts”访问
- python - TypeError:“模块”对象不可调用(随机模块)
- python-3.x - 通过 msmtp 为 crontab 发送电子邮件主题和密件抄送
- python - 带有奇怪返回函数的循环?
- c++ - 排除一个数列,使所有其他数的最大除数最多。找到被排除的索引和最大 GCD
- python-3.x - 将 rasp CCTV 视频流式传输到 TKInter 中的标签