gpt4 book ai didi

javascript - 如何使用 google-cloud 和 node js 从 firebase 存储中检索图像并将其显示在网页上

转载 作者:行者123 更新时间:2023-11-30 06:50:55 26 4
gpt4 key购买 nike

我将我的图像存储在 firebase 存储上,现在我想在我的页面上显示它

const firebase = require('./../config/firebase');
const gcloud = require('google-cloud');
const fs = require('fs');

var storage = gcloud.storage({
projectId: 'test-a1e76',
keyFilename: 'test-a1e76-firebase-adminsdk-7111d-124guy123eac.json',
});

var bucket = storage.bucket('test-a1e76.appspot.com');

这是我的设置的样子。

这是我的获取方法。

router.get('/image', function (req,res) {

var remoteReadStream = bucket.file('download.png').createReadStream();
var localWriteStream = fs.createWriteStream('/images/watchers/2jIompF9FUZ6A4LnpBcbpHWw8dx2/download.png');
var ss = remoteReadStream.pipe(localWriteStream);
res.send(ss);
})

我只试过这个,因为它是写在 npm docs.of google-cloud works 上的。我试着把它放在 get 方法中看看它是如何工作的。

然后我得到了这个错误..

Error: ENOENT: no such file or directory, open 'C:\images\test\2jIoasd24zd13ase121s2Ww8dx2\download.png'

这是我的ajax获取方法

 $.ajax({
url:'/user/image',
type:'GET',
success:function(data){
console.log(data.path);

}
});

这里有人可以指导我如何从 firebase 存储中检索图像并将其显示在我的网页上吗?使用这个 google-cloud npm?因为我读到一些帖子说 node js 不支持 firebase-storage,所以他们改用 google-cloud。

最佳答案

我是这样工作的。

var admin = require("firebase-admin");
...
app.get('/picture', async (req, res) => {
const fileRef = admin.storage().bucket().file('03aead66e97f0d50ce549b6fffc1b6d7.svg');
const hash = await fileRef.download()
res.contentType(fileRef.metadata.contentType);
res.end(hash[0], 'binary');
});

关于javascript - 如何使用 google-cloud 和 node js 从 firebase 存储中检索图像并将其显示在网页上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50098927/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com