2014-10-30 140 views
1

我觉得这应该很简单,但是我无法完成这项工作。我有一个前端命中的URL。这会触发节点从另一台服务器获取图像。接下来,我希望节点发送图像作为响应。这部分不适合我。从另一台服务器获取的node.js中提供图像

render: function(img,response){ 
    request.get(URL, function (error, res, body) { 
     if (!error && res.statusCode == 200) { 
      response.setHeader('Content-Type', 'image/png'); 
      response.writeHead(200); 
      response.write(body); 
      response.end(); 
     } 
    }); 
} 

我应该缓冲图像吗?

仅供参考我试图这样做,因为我需要检索作为src路径中的身份验证凭据的图像,我不希望那些暴露给用户。所以如果你认为有比我想要的更好的解决方案,请随时提出建议。 :)

谢谢!

回答

1

这应该做工精细,但你忽略了一个非常重要的部分,写入数据回响应:)

你只需要添加:

response.write(body); 
response.end(); 

写头后。

+0

谢谢aqidanok!我尝试添加(我之前在那里,并忘记了我已经简单地删除它),但它仍然无法正常工作。还有什么想法? – 2014-10-30 17:12:58

+0

不确定tbh,我会使用curl或类似的工具来检查浏览器之外的响应,看看发生了什么。 – aidanok 2014-10-30 19:25:50

相关问题