我有以下Firebase云函数来获取存储在Google Cloud Storage中的文件的URL。
这会返回正确的URL,但其长度超过了600个字符。在Firebase Web控制台上看到的同一文件的URL长度不到200个字符。是否有办法使用firebase-admin或firebase-functions模块检索URL以获取较短的URL?
const gcs = require('@google-cloud/storage')({keyFilename: 'service-account.json'});
exports.generateFileLink = functions.storage.object().onChange(event => {
const object = event.data;
const filePath = object.name;
const bucket = gcs.bucket(object.bucket);
const file = bucket.file(filePath);
const action = 'read';
const expires = '03-09-2491';
return file.getSignedUrl({action, expires}).then(signedUrls => {
console.log(signedUrls[0])
});
})
这会返回正确的URL,但其长度超过了600个字符。在Firebase Web控制台上看到的同一文件的URL长度不到200个字符。是否有办法使用firebase-admin或firebase-functions模块检索URL以获取较短的URL?
gs://
URI 并使客户端获取实际下载链接。另一个选择是调查链接缩短器(如 bit.ly)以扩展到完整的签名 URL。 - Mike McDonald