【发布时间】:2013-10-05 18:57:44
【问题描述】:
如果我正在构建一个 SPA 应用程序,我只希望访问我的服务器的所有 URL 都转到一个控制器,该控制器将为 SPA 加载我的 index.html 和我的所有 javascript。
这是因为 html5mode 在支持历史 API 的浏览器上删除了哈希。因此,如果用户要刷新 html5mode SPA URL,那么它会访问服务器...
对此我的解决方案是创建一个“默认”路由...但我在 RouteCollection 中找不到让这件事变得简单的方法...
更新: 这是一条有效的路线。有没有更好的方法来做到这一点?有什么理由我不应该这样做?
routes.MapRoute(
name: "Default",
url: "{*things}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
【问题讨论】:
-
根据我的理解把路线倒过来,
Default应该是最后一个
标签: asp.net-mvc-4