asp.net-mvc – 用于Bookmarked Angular SPA URL的ASP.NET MVC 4
发布时间:2020-12-16 03:34:51 所属栏目:asp.Net 来源:网络整理
导读:我正在尝试在AngularJS中构建单页面应用程序,并在 HTML5模式下完成客户端路由.如果用户曾在我的网站上为页面添加书签,我理解我需要一个基本的服务器端路由方案,但我真的希望它只是总是提供我的单个主页并将相同的URL传播到客户端路由部分. 这个包罗万象的路
我正在尝试在AngularJS中构建单页面应用程序,并在
HTML5模式下完成客户端路由.如果用户曾在我的网站上为页面添加书签,我理解我需要一个基本的服务器端路由方案,但我真的希望它只是总是提供我的单个主页并将相同的URL传播到客户端路由部分.
这个包罗万象的路线完美适用于只有一个深度的简单URL: routes.MapRoute( "Default",// Route name "{*catchall}",// URL with parameters new { controller = "Home",action = "Index" } // Parameter defaults ); 示例网址: http://myapp.com/moreInfo http://myapp.com/contactUs “moreInfo”和“contactUs”只是Angular中的命名路由.单页应用程序的唯一真正入口点是http://myapp.com.到目前为止,这一切都非常顺利. 但是,当我尝试深入到多个路径时,应用程序会进入无限循环: http://myapp.com/user/5 这是因为我的服务器端路由不足以将“user / 5”URL“传递”到我的客户端应用程序吗?我是否需要做一些特别的事情以确保无论URL的嵌套程度如何,它都会正确地传递给我的SPA? 解决方法
问题不在于路由配置,我有一个类似于角度js和mvc 4的设置,下面的路由工作正常.
routes.MapRoute( name: "Application",url: "{*url}",defaults: new { controller = "Home",action = "Index" },namespaces: new[] { "MyApp.Web.Controllers" }); 你是否在angular config方法中将html5Mode设置为true? $locationProvider.html5Mode(true); 您可以尝试使用fiddler向您的应用发送get请求并查看响应.如果是301或302,那么您将遇到服务器端重定向循环问题.如果它是200,那么你的angular / js代码可能是问题. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – Azure托管的ASP.NET MVC网站删除与客户端缓
- asp.net-mvc – ASP.NET MVC – HTTP验证提示
- asp.net – 日历自定义验证器
- asp.net – 如何查询具有多个根和过滤的嵌套集模型
- asp.net-mvc-3 – MVC3:超出最大请求长度
- asp.net-mvc – 在asp.net mvc中设置为Session的持久cookie
- asp.net – 无法将第二个自引用FK添加到模型,导致无法确定主
- 使用ASP.NET通过POST接收(和发送)XML
- asp.net-mvc – 如何根据枚举值检查单选按钮
- Pro ASP.NET Core MVC(二)【第一个MVC 应用程序】
推荐文章
站长推荐
- asp.net – 应用程序池循环如何影响ASP Net会话状
- Azure中的ASP.NET会话状态提供程序[closed]
- AspNet Core在内存中使用,用于在IIS中运行时进行
- asp.net – Async / Await和AsyncController?
- asp.net – 为什么WebMethod声明为静态?
- asp.net – 这是什么错误?
- asp.net-core – 哪些.NET框架版本支持.NET Fram
- asp.net-mvc-2 – 如何在asp.net mvc 2中使用fak
- asp.net-mvc – 如何在Entity Framework中重用投
- .net core下使用DbProviderFactories.GetFactory
热点阅读