我在生成存储在Firebase存储分区中的文件的外部链接时遇到问题。
我正在使用Google云端存储一段时间并使用this库(基于this答案)来生成常规存储分区的外部链接,但在Firebase上使用它 - 分配的桶似乎不起作用。
我无法生成任何安全的HTTPS链接,并且不断获得证书验证错误NET::ERR_CERT_COMMON_NAME_INVALID
,表明我的连接不是私密的。如果我从HTTPS中删除“S”,则链接有效。
注意:使用相同的凭据和私钥为我的项目中的其他存储桶生成链接,效果很好。只有Firebase存储桶拒绝接受我的签名......
答案 0 :(得分:4)
我建议使用官方GCloud client,然后您可以使用getSignedUrl()
获取文件的下载网址,如下所示:
bucket.file(filename).getSignedUrl({
action: 'read',
expires: '03-17-2025'
}, function(err, url) {
if (err) {
console.error(err);
return;
}
// The file is now available to read from this URL.
request(url, function(err, resp) {
// resp.statusCode = 200
});
});
每Generate Download URL After Successful Upload这似乎适用于Firebase和GCS存储桶。