如果我正在构建一个 SPA 应用程序,我只希望所有访问我的服务器的 URL 都转到一个控制器,该控制器将加载我的 index.html 和我的所有 SPA javascript。
这是因为 html5mode 删除了支持历史 API 的浏览器上的哈希值。因此,如果用户要刷新 html5mode SPA URL,那么它会访问服务器......
我对此的解决方案是只创建一个“默认”路由......但我找不到在 RouteCollection 中使这变得容易的方法......
更新: 这是一条可行的路线。有没有更好的方法来做到这一点?有什么理由我不应该这样做?
routes.MapRoute(
name: "Default",
url: "{*things}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);