将图像保存到云存储后,我在firebase功能中获取下载URL时遇到问题.下面是我在firecript中的firebase http函数,用于将base64字符串保存到firebase云存储中的jpeg.当我记录结果时,它总是为空.我按照此链接获取下载URL" 从使用firebase-admin上传的文件中获取公共URL ".但它给了我以下错误:" SigningError:身份和访问管理(IAM)API尚未在项目81673989436中使用之前或它被禁用. "并且找不到简单的示例.我的计划是在上传到云存储后更新我的firestore表.
export const publishImage = functions.https.onRequest((req, res) => {
// Convert the base64 string back to an image to upload into the Google
// Cloud Storage bucket
const base64EncodedImageString=req.body.image.replace(/^data:image\/jpeg;base64,/, "");
const mimeType = 'image/jpeg';
const randomFileName = crypto.randomBytes(16).toString('hex') + '.jpeg';
const imageBuffer = new Buffer(base64EncodedImageString, 'base64');
const bucket = admin.storage().bucket();
// Upload the image to the bucket
const file = bucket.file('images/' + randomFileName);
file.save(imageBuffer, {
metadata: { contentType: mimeType },
}).then(result => {
console.log(result);
file.makePublic(); …Run Code Online (Sandbox Code Playgroud)