我正在使用Node + Express和Handlebars来制作一个单页Web应用程序,目前从一个相当标准的server.js文件中提供index.html,一切都正常运行。
我正在使用Node + Express和Handlebars来制作一个单页Web应用程序,目前从一个相当标准的server.js文件中提供index.html,一切都正常运行:
var express = require('express');
var server = express();
server.use(express.static(__dirname + '/public'));
var port = 10001;
server.listen(port, function() {
console.log('server listening on port ' + port);
});
当从http://localhost:10001/
加载时,这个很完美。我的问题是,我在应用程序中使用了推送状态,所以浏览器可能显示像http://localhost:10001/foo/bar
这样的URL,然后如果我刷新页面,就会出现错误Cannot GET /foo/bar
,因为没有该路由。
那么我的问题是,抱歉,当涉及到Node时,我的知识非常初级,我能否使所有请求都路由到index.html? 我的应用程序中的JavaScript可以根据页面加载时的URL参数来显示正确的内容。 我不想定义自定义路由,因为它们的数量可能很大,并且它们的路径可以动态更改。