【问题标题】:Download file from url angular 2从 url angular 2 下载文件
【发布时间】:2017-08-16 18:47:02
【问题描述】:

我有网址:http://localhost:9999/file/bongda.PNG

我使用 nodejs 为公共文件服务:

application.use(express.static(path.join(__dirname, 'uploads')));

application.get('/file/:name', function (req, res, next) {

  var options = {
    root: __dirname + '/uploads/',
    dotfiles: 'deny',


    headers: {
        'x-timestamp': Date.now(),
        'x-sent': true
    }
  };
    console.log('Express server listening downloads ');
  var fileName = req.params.name;
  res.type('png'); 
  res.sendFile(fileName, options, function (err) {
    if (err) {
      next(err);
    } else {
      console.log('Sent:', fileName);
    }
  });

});

我想从 url 下载文件

我使用<a href="window.location.href='http://localhost:9999/file/bongda.PNG'">123123</a>

<a href="http://localhost:9999/file/bongda.PNG">123123</a>

但它没有成功。 请帮帮我?

【问题讨论】:

  • 错误信息是什么?
  • 没有消息抛出
  • 关于错误的图片
  • 您对图片的请求的 http-answer 是什么?

标签: html node.js


【解决方案1】:

你错过了 href: 中的javascript:

<a href="javascript:window.location.href='http://localhost:9999/file/bongda.PNG'">123123</a>

如果您想强制浏览器下载文件而不是打开文件,则应在后端代码中添加以下行:

res.setHeader('Content-disposition', 'attachment; filename=' + fileName);

【讨论】:

  • :( .no它打开链接不下载
  • @user3089993,我已经扩展了答案。您应该再发送一个标头。
【解决方案2】:
 <a href="http://localhost:9999/video.mp4" download> Dowload Video </a>

我用的是html5 href。没关系

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-10
    • 2018-05-26
    • 2018-03-06
    • 2018-05-30
    • 1970-01-01
    • 2017-11-10
    • 2018-02-09
    • 2018-08-16
    相关资源
    最近更新 更多