NodeJS WriteFile CreateWriteStream

Ale*_*nko 1 stream request node.js

好的.有这两个代码:

// first example
request(imageUrl).then((data) => {
  var wstream = fs.createWriteStream('doodle');
  wstream.write(data);
})
// second example
request(imageUrl).pipe(fs.createWriteStream('doodle2'));
Run Code Online (Sandbox Code Playgroud)

我尝试做的是将图像保存到磁盘.第二个例子很好.但我的问题是:两个例子都做同样的任务,但为什么它们会产生不同的结果呢?顺便说一句,这是示例中的请求 - 承诺模块.

小智 7

var request = require("request-promise");
var fs = require("fs");
var imageUrl = "http://www.biografiasyvidas.com/biografia/m/fotos/mandela_nelson_5.jpg";
request({
    "uri":imageUrl,
    "encoding": null
}).then((data) => {
    var wstream = fs.createWriteStream('doodle.jpg');
    wstream.write(data);
});
Run Code Online (Sandbox Code Playgroud)

在这种情况下,编码必须为空.请参阅README.md,搜索编码 https://github.com/request/request