Node.js Google云存储文件写入流失败
嗨,我正在尝试使用node.js在谷歌云存储中编写一个文件 当我尝试写入文件时,我得到以下错误Node.js Google云存储文件写入流失败,node.js,google-cloud-storage,Node.js,Google Cloud Storage,嗨,我正在尝试使用node.js在谷歌云存储中编写一个文件 当我尝试写入文件时,我得到以下错误 { "errors": [ { "domain": "global", "reason": "badRequest", "message": "Invalid Upload Request" } ], "code": 400, "message": "Invalid Upload Request" } 下面是用于编写该文件的部分代码
{
"errors": [
{
"domain": "global",
"reason": "badRequest",
"message": "Invalid Upload Request"
}
],
"code": 400,
"message": "Invalid Upload Request"
}
下面是用于编写该文件的部分代码
const storageClient = require( '@google-cloud/storage' );
var storage = storageClient({ projectId: config.gcsProjectId }).bucket( config.gcsBucket );
var gcsStream = storage.file( this.config.fileName ).createWriteStream();
var entities = {}//huge json object;
Object.values( entities ).forEach( (json) => {
var str = JSON.stringify( json );
gcsStream.write( str + '\n' );
});
gcsStream.on('error', (err) => {
console.error(`${ this.archive }: Error storage file write.`);
console.error(`${ this.archive }: ${JSON.stringify(err)}`);
});
gcsStream.end();
我正在使用node 8.3.0、npm 5.4.1、@googlecloud/storage 1.3.0好吧,我似乎已经解决了我的问题;和你遇到的问题一样。我收到此错误是因为我的文件名包含“破折号”。从文件名中删除它后,它成功上载,没有任何错误。祝你好运 谢谢,我会让你知道:)