Firebase 功能和存储已停止工作
Posted
技术标签:
【中文标题】Firebase 功能和存储已停止工作【英文标题】:Firebase Function & Storage has stopped working 【发布时间】:2021-10-16 03:04:49 【问题描述】:我使用 FB admin SDK 编写了两个函数(~ 07/20/21)将文件上传到 FB Storage。它适用于 300 多次上传。我昨天(08 月 11 日)回到它,它不再工作,并且没有代码更改(据我所知)。
FB函数Logs说app ReferenceError: bucket is not defined at Object.writeFileToFirebase (/workspace/uploadUtils.js:12:18)
存储桶是按照documentation在我的./firebaseConfig.js
中定义的。
const firebase = require('firebase')
const functions = require('firebase-functions')
const admin = require('firebase-admin')
const firebaseConfig = require('./firebaseConfig.js')
firebase.initializeApp(firebaseConfig)
admin.initializeApp(firebaseConfig)
const bucket = admin.storage().bucket()
而我的两个函数都是从uploadUtils.js
导出的
async function writeFileToFirebase(filename, mimetype, filebuffer)
const file = bucket.file(filename)
const filestream = file.createWriteStream(
metadata:
contentType: mimetype
)
await filestream.end(filebuffer).catch(functions.logger.log(err))
return
async function createThumbnail(newthumbname, mimetype, filebuffer)
const file = bucket.file(newthumbname)
const thumbstream = file.createWriteStream(
metadata:
contentType: mimetype
)
const gm = require('gm').subClass(
imageMagick: true
)
gm(filebuffer)
.resize(240, 240)
.toBuffer('jpg', (err, thumbbuffer) =>
thumbstream.end(thumbbuffer).catch(console.log(err))
)
return
exports.writeFileToFirebase = writeFileToFirebase
exports.createThumbnail = createThumbnail
错误消息的第 12 行是 const file = admin.storage().bucket()
我的bucket
声明的范围比函数调用高。我正在使用我在firebaseConfig.js
中指定的默认存储桶。
谁能告诉我我的bucket
声明有什么问题?还是我的问题在别处?
【问题讨论】:
【参考方案1】:看来我需要将这两行移到函数声明中。它们不是继承的...我不知道为什么在此更改之前这曾经有效。
const admin = require('firebase-admin')
const bucket = admin.storage().bucket()
【讨论】:
以上是关于Firebase 功能和存储已停止工作的主要内容,如果未能解决你的问题,请参考以下文章