我想在客户端下载Google CDN文件。
我的页面上有一些链接,点击后应生成下载。类似的东西:
<a href="//ajax.googleapis.com/ajax/libs/prototype/1.7.2.0/prototype.js">Link</a>
将作为下载发送给客户端。
我试过了:
app.get('/download/:version?', function(req, res){
fs.readFile('http://ajax.googleapis.com/ajax/libs/prototype/1.7.2.0/prototype.js', function (err, data) {
if (err) throw err;
res.download(data);
});
});
但那没有做到。这是正确的方法吗?
答案 0 :(得分:2)
fs.readFile()
仅支持本地系统上的路径。
尝试使用http.request()
/ http.get()
代替:
var http = require('http');
// ...
app.get('/download/:version?', function(req, res){
// set Content-Disposition header
res.attachment('prototype.js');
// transfer the file
http.get('http://ajax.googleapis.com/ajax/libs/prototype/1.7.2.0/prototype.js')
.pipe(res);
});