用node从网上下载图片,下好一张再请求下一张,程序老是卡住不动了,还是随机卡在某个图片的,没有报错
用node从网上下载图片,下好一张再请求下一张,程序老是卡住不动了,还是随机的,没有报错,但也没退出运行,就是不动了,打断点也不会走进来,是什么原因呢,下载的代码大概是这样
function download() {
http.get(picUrl, function (res) {
var code = res.statusCode;
console.log(picUrl+code);
if (code == "404") {
console.log("跳过下载"+picPath);
res.resume();
next();
return;
}
res.setEncoding('binary');//转成二进制
var content = '';
res.on('data', function (data) {
content+=data;
});
res.on('end', function () {
fs.writeFile(picPath,content,'binary', function (err) {
if (err) {
console.log("写入错误"+err.message);
}
next();
});
});
}).on("error",function(err) {
console.log(err.message+"重新请求");
setTimeout(function(){
download();
},2000);
});
}
next()里会调用download(), 是内存原因还是网络原因,或者是其他原因呢