Node.js 节点请求管道在几个小时后挂起

Node.js 节点请求管道在几个小时后挂起,node.js,Node.js,我在一个用于下载图像的节点应用程序中有一个端点 var图像={ “汽车”:http://someUrlToImage.jpg', “船”:http://someUrlToImage.jpg', “火车”:http://someUrlToImage.jpg' } app.get('/api/download/:id',函数(req,res){ var id=请求参数id; res.setHeader(“内容处置”、“附件;文件名=image.jpg”); 请求.get(图像[id]).pip

我在一个用于下载图像的节点应用程序中有一个端点

var图像={
“汽车”:http://someUrlToImage.jpg',
“船”:http://someUrlToImage.jpg',
“火车”:http://someUrlToImage.jpg'  
}
app.get('/api/download/:id',函数(req,res){
var id=请求参数id;
res.setHeader(“内容处置”、“附件;文件名=image.jpg”);
请求.get(图像[id]).pipe(res);

});您应该在请求中添加错误侦听器,因为错误不会在管道中传递。这样,如果您的请求有错误,它将关闭连接,您将得到原因

request
.get(...)
.on('error', function(err) {
  console.log(err);
  res.end();
})
.pipe(res)

无论是否存在
错误处理程序,都将抛出
请求.get()
中的任何错误(尽管在这里有一个显式错误处理程序不是坏事)。能否详细说明为什么会抛出此错误?请尝试为
请求.get()
配置超时。