sen*_*dro 19 javascript http stream request node.js
我正在通过http获取一些二进制数据.我的代码看起来像:
var writeStream = fs.createWriteStream(fileName);
request(url, function(err, res) {
res.socket.pipe(writeStream);
});
Run Code Online (Sandbox Code Playgroud)
现在输出文件已创建但文件大小为0.网址是正确的,但我用wget验证了.
在此先感谢您的问候
bkc*_*rad 23
回调http.request仅提供一个参数,该参数是对请求响应的引用.尝试
http.request(url, function(res) {
res.pipe(writeStream);
});
Run Code Online (Sandbox Code Playgroud)
还要注意ClientResponse工具ReadableStream,所以你应该使用.pipe而不是.socket.pipe.
我假设这request是来自mikeal的请求库而不是一个实例http.request.在这种情况下,你可以做到request(url).pipe(writeStream);
请记住,出于调试目的,您始终可以管道process.stdout.