在Node中使用HTTP或HTTPS下载文件

时间:2016-03-28 16:43:33

标签: node.js file http https download

我知道如何使用http库和https库下载文件。

但如果我想让用户选择同时执行这两项操作,我该怎么办?

目前我的代码看起来像这样

var downloadFile = function (url) {
  var protocol = url.replace(/^(.*?):.*/, '$1');
  var protocolLibrary = require(protocol);
  protocolLibrary.get(url, function (response) { ... });
};

这是最好的方法吗?

1 个答案:

答案 0 :(得分:0)

你做的方式留下了一个巨大的安全漏洞,最终用户可能会在你的服务器上运行几乎任何现有的节点模块(如果他们知道它的路径或者它已经在{{1}中) }搜索路径)。

您可以将可选择的库限制为预先加载的几个,如下所示:

require()