【发布时间】:2013-06-10 12:10:48
【问题描述】:
以下行将从指定的url 变量下载图像文件:
var filename = path.join(__dirname, url.replace(/^.*[\\\/]/, ''));
request(url).pipe(fs.createWriteStream(filename));
这些行将获取该图像并保存到 MongoDB GridFS:
var gfs = Grid(mongoose.connection.db, mongoose.mongo);
var writestream = gfs.createWriteStream({ filename: filename });
fs.createReadStream(filename).pipe(writestream);
像这样链接pipe 会引发错误:500 无法管道。不可管道。
request(url).pipe(fs.createWriteStream(filename)).pipe(writestream);
这是因为图像文件还没有准备好读取,对吧?我应该怎么做才能解决这个问题?错误:500 无法管道。不可管道。
使用以下:Node.js 0.10.10、mongoose、request 和 gridfs-stream 库.
【问题讨论】:
标签: node.js stream mongoose pipe gridfs