是的,Firebase 存储可以与云存储签名 URL 配合使用
以下是如何在 Firebase 存储中使用签名 URL 的简要步骤:
npm install -g firebase-tools
firebase login
firebase init
npm install firebase-admin
const admin = require('firebase-admin');
const serviceAccount = require('./path/to/your/serviceAccountKey.json');
admin.initializeApp({
credential: admin.credential.cert(serviceAccount),
storageBucket: '<your-storage-bucket>.appspot.com',
});
const bucket = admin.storage().bucket();
async function getSignedUrl(objectName) {
const [url] = await bucket
.file(objectName)
.getSignedUrl({
action: 'read',
expires: '03-09-2491', // 设置 URL 的过期时间
});
console.log('Signed URL:', url);
}
getSignedUrl('path/to/your/file.jpg');
这将生成一个带有签名的 URL,可以在其有效期内访问存储桶中的对象。
fetch(signedUrl)
.then((response) => response.blob())
// 处理 Blob 数据,例如将其显示为图像
.then((blob) => {
const imageUrl = URL.createObjectURL(blob);
const img = document.createElement('img');
img.src = imageUrl;
document.body.appendChild(img);
});
这样,您就可以在 Firebase 存储中使用云存储签名 URL 了。请注意,出于安全原因,不要在客户端代码中暴露服务帐户密钥。确保将密钥文件保存在服务器端,并通过服务器端 API 生成签名 URL。
领取专属 10元无门槛券
手把手带您无忧上云