0
我是express中的新手,我也使用了Backbone Boilerplate。在开发的情况下,当要求/assets/css/index.css
我想交付/public/dist/debug/index.css
。
我做了这一点:不同文件的快速路由
var env = process.env.NODE_ENV || 'development';
switch (env) {
case 'development':
app.get('/assets/css/index.css', function(req, res) {
res.sendfile('public/dist/debug/index.css');
});
break;
}
但由于某些原因我的网页不断得到不正确的文件:/assets/css/index.css
。
出了什么问题?
我:app.use(express.static(config.root + '/公共')); 这是否意味着我应该使用:res.sendfile('dist/debug/index.css'); (没有“公共”)? – Naor
@Naor它取决于你的目录结构。我认为'res.sendfile'会找到相对于'当前工作目录'(通常是开始运行应用程序的目录)的文件,除非[你提供了'root'选项](http://expressjs.com /api.html#res.sendfile)。但是,既然你得到了一个响应,但不是正确的,这意味着你的自定义'app.get'根本没有被调用。我的答案应该修复。如果不是,则需要提供更多的上下文(如应用程序设置)。 – robertklep