使用SailsJS下载.exe文件 - NodeJS

问题描述:

我已经使用创建了一个小应用程序Node-WebKit。所以我想在SailsJS写一个后端服务,这将帮助我从远程服务器下载我的应用程序的exe文件。我想知道在指定远程服务器位置时,如何编写服务以将.exe文件下载到本地磁盘。使用SailsJS下载.exe文件 - NodeJS

任何帮助表示赞赏,感谢 提前

取决于位置的可执行文件是有点。但基本上,您只需读取该文件并将其写入响应流。这是通过将文件流传送到响应流中来最有效地完成的。事情是这样的:

var fs = require('fs'); 
var filePath = 'path/to/your/file.exe'; 
var stat = fs.statSync(filePath); 

response.writeHead(200, { 
    'Content-Type': 'application/exe', 
    'Content-Length': stat.size 
}); 

var readStream = fs.createReadStream(filePath); 
readStream.pipe(response); 

应当指出的是,许多系统会阻止你的exe文件从网站下载后进行运行,因此这可能不是最适合你的分布模型。

+0

非常感谢。你能解释一下我的工作方式吗? 现在正在进行测试我试图下载一个文件,该文件在我的系统中位于一个驱动器(C)中的本地文件中,并且位于另一个驱动器(D)中。为此,代码将如何工作? – DivyaMenon 2014-12-06 13:27:09

+0

该代码必须是您描述的Sails应用程序的一部分。如果你制作了一个Sails应用程序,你可以将该代码放入其中一个控制器动作中。 – Paul 2014-12-06 13:28:24

+0

我试过了你提供的方法。但是我没有得到我提供的路径相同的.exe文件。 – DivyaMenon 2014-12-06 13:34:36