我想知道是否有任何方法可以直接写入GCP / Google云存储分区中托管的文件。理想情况下,我们希望使用nodejs写入文件,但也希望探索其他技术。
我们在NodeJS路由器方法中收到一个请求,我们想将请求内容写入GCP存储桶中的文件。在我看来,写入gcp存储桶中文件的唯一方法是上传文件,但我们会想看看是否有任何方法可以写入文件而不必上传文件。
有什么办法可以做到这一点?任何指针或链接都将非常有帮助。
答案 0 :(得分:2)
由于您可以使用其他工具,因此如何使用gcsfuse将存储桶安装到本地文件系统中,那么您只需在nodejs请求中写入安装点,然后让gcsfuse进行上传即可。 / p>
答案 1 :(得分:1)
我可以向您指出file.createWriteStream的方向,您可以在其中创建可写流以管道传输到文件。
const fs = require('fs');
const {Storage} = require('@google-cloud/storage');
const storage = new Storage();
const myBucket = storage.bucket('my-bucket');
const file = myBucket.file('my-file');
fs.createReadStream('/path')
.pipe(file.createWriteStream())
.on('error', function(err) {})
.on('finish', function() {
// The file upload is complete.
});