我做了一个html5游戏(使用GameMaker),它由一个index.html和一个包含游戏依赖关系的javascript html代码和资源组成的文件夹“html5game”组成。问题是资源是相当多种多样的(声音,精灵等)和客户需要他们都玩。发送整个文件夹的内容到客户端快递
我正在寻找一种方法将它们全部发送,而无需专门命名它们。
我试图glob模块:
var glob = require('glob');
var files = glob.sync('./html5game/**').forEach(function(file) {
require(path.resolve(file));
});
,但我想不通的方式使用res.sendFile()一旦我这样做是为了发送的文件。
我试图
var express = require('express');
var app = express();
[...]
app.get('/aeronavale/jeu', function(req, res){
res.sendFile(__dirname + '/aeronavale/index.html');
res.sendFile(files)
});
[...]
app.listen(3000, function(){
console.log('app started on port 3000, yeah !')
})
,但它给我的错误:
TypeError: path argument is required to res.sendFile
如果您有其他的解决办法,我一个也有兴趣。谢谢你的回答!
谢谢,我测试并回来验证很快 –
因此,有了这个解决方案,我必须创建一个我想要在服务器上的文件夹结构,每个都必须包含一个index.html? –
@Aninternhasnoname是的,你可以在服务器上创建你想要的结构 - 例如'html'目录包含'game1','game2'等等,每个都有自己的'index.html'和一个带资产的子目录 - 这将是最简单的一个调用'app.use(express.static( ''或者你可能每场比赛只有一个呼叫:'app.use('/ game1',express.static(pathToGame1Files));''和'app.use('/ game2',express.static( pathToGame2Files));'对你而言更加方便。你甚至可以混合这两种方式,但注册路径的顺序将很重要。 – rsp