在 ExpressJS 中通过管道传送远程文件

2024-05-09

我想读取远程图像并显示它。我可以保存文件,但无法正确显示代码。理想情况下,我只想直接传递文件而不进行处理 - 不确定是否需要 tmp 文件步骤。此代码不显示任何内容 - 没有错误。我也尝试了 res.pipe(response) 。

var url = 'http://proxy.boxresizer.com/convert?resize=50x50&source=' + filename

var request = http.get(url, function(response) {

  var tmp = path.join(require('os').tmpDir(), filename);

  var outstream = require('fs').createWriteStream(tmp);

  response.pipe(outstream);
  response.on('end', function() {
    res.set('Content-Type', 'image/jpg');
      res.pipe(outstream);
      res.end();
  });
});

好吧,我仍然想知道如何使上述工作正常进行,但我用以下方法解决了我的问题request https://github.com/mikeal/request module!

var url = 'http://proxy.boxresizer.com/convert?resize=50x50&source=' + filename
require('request').get(url).pipe(res);  // res being Express response
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 ExpressJS 中通过管道传送远程文件 的相关文章

随机推荐