Nodejs - svg文件显示为xml

时间:2016-08-25 21:25:59

标签: javascript node.js svg

在我的脚本中,我使用https.get从badge.io下载徽章,然后管道响应。示例网址:https://img.shields.io/badge/aa-sta-brightgreen.svg

当我尝试显示下载的svg时会发生什么,它被解释为xml。即:当我尝试在localhost上显示它时,我有这样的消息: “此XML文件似乎没有与之关联的任何样式信息。文档树如下所示。”

但是,如果我将svg作为txt扩展名下载,则将其重命名为svg扩展名,然后正确显示,不会出现上述错误消息。

这是我的下载功能:

  var file = fs.createWriteStream(dest);
  var request = https.get(url, function(response) {
    response.pipe(file);
  }).on('error', function(err) { 
    fs.unlink(dest); 
    if (cb) cb(err.message);
  });

无论如何下载svg并直接在localhost上显示它而不是更改它的扩展名?谢谢。

1 个答案:

答案 0 :(得分:0)

您是否尝试过设置响应的内容类型?

res.setHeader( “内容类型”, “图像/ SVG + XML”);