Image 使用Node.js请求库保存图像文件会导致异常

Image 使用Node.js请求库保存图像文件会导致异常,image,node.js,stream,request,Image,Node.js,Stream,Request,这是来自请求的Github回购- 您可以将任何响应流式传输到文件流 我对它进行了这样的修改,其中largeImage是来自第三方网站的绝对url路径 request(largeImage).pipe(fs.createWriteStream('./img/large/demo.jpg')); 但是我得到了以下错误(不确定为什么?)。我已经看过createWriteStreamAPI,它似乎是正确的。如果我只包含“demo.jpg”,它就可以正常工作。但若我在“demo.jpg”旁边包含路径,它

这是来自请求的Github回购-

您可以将任何响应流式传输到文件流

我对它进行了这样的修改,其中largeImage是来自第三方网站的绝对url路径

request(largeImage).pipe(fs.createWriteStream('./img/large/demo.jpg'));
但是我得到了以下错误(不确定为什么?)。我已经看过createWriteStreamAPI,它似乎是正确的。如果我只包含“demo.jpg”,它就可以正常工作。但若我在“demo.jpg”旁边包含路径,它会抛出一个异常

stream.js:81
      throw er; // Unhandled stream error in pipe.
            ^
Error: ENOENT, open './img/large/demo.jpg'
10 Oct 16:51:02 - [nodemon] app crashed - waiting for file changes before starting...
更新:问题是我没有在/img/之前包含/public/文件夹

此更新的代码正常工作:

 request(largeImage).pipe(fs.createWriteStream('./public/img/large/demo.jpg'));

一切看起来都很好。我猜问题与权限有关,或者可能需要先创建./img/large目录

执行以下操作以获取更多信息:

var ws = fs.createWriteStream('./img/large/demo.jpg');
ws.on('error', function(err) { console.log(err); });
request(largeImage).pipe(ws);

大多数人忘记了“/public/”包括我!
var ws = fs.createWriteStream('./img/large/demo.jpg');
ws.on('error', function(err) { console.log(err); });
request(largeImage).pipe(ws);