gpt4 book ai didi

node.js - 将缓冲区上传到谷歌云存储

转载 作者:IT老高 更新时间:2023-10-28 23:15:35 24 4
gpt4 key购买 nike

我正在尝试将缓冲区(从表单上传的文件)保存到谷歌云存储,但谷歌 Node SDK 似乎只允许上传具有给定路径的文件(读/写流)。

这是我用于 AWS (S3) 的 - Google Node SDK 中还有什么类似的吗?:

var fileContents = new Buffer('buffer');

var params = {
Bucket: //bucket name
Key: //file name
ContentType: // Set mimetype
Body: fileContents
};

s3.putObject(params, function(err, data) {
// Do something
});

到目前为止,我发现的唯一方法是将缓冲区写入磁盘,使用 SDK 上传文件(指定新文件的路径),然后在成功上传后删除文件 - 缺点这是因为整个过程明显变慢了,以至于使用 Google 存储似乎不可行。是否有任何解决方法/上传缓冲区的方法?

最佳答案

.save 拯救世界!下面的一些代码保存了我创建的“pdf”。

https://googleapis.dev/nodejs/storage/latest/File.html#save

const { Storage } = require("@google-cloud/storage");

const gc = new Storage({
keyFilename: path.join(__dirname, "./path to your service account .json"),
projectId: "your project id",
});

const file = gc.bucket(bucketName).file("tester.pdf");
file.save(pdf, (err) => {
if (!err) {
console.log("cool");
} else {
console.log("error " + err);
}
});

关于node.js - 将缓冲区上传到谷歌云存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36535153/

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