带回退的 Angular html5 模式



我正在开发一个已经存在了一段时间的棱角分明的应用程序。
到目前为止,我使用的是正常的#模式,没有任何前缀。
该应用程序具有相当多的内容,因此某些客户可能已将其添加为书签(使用哈希 url 架构)。

现在我想切换到html5Mode但要保持与旧 url 架构的兼容性。
我的意思是,例如,如果我以前在 html5mode 中www.mysite.com/#/action/content?param1=A&param2=B这个网址,它将www.mysite.com/action/content?param1=A&param2=B .

我想要的是:如果任何用户知道旧网址(带有#),并且他在浏览器中使用它,我希望我的应用程序是智能的,并使用新的html5Mode url将用户重定向到正确的页面,或者如果浏览器不支持新的html5Mode,则继续使用旧网址。

这可能吗?

(我正在使用ui-router

我能想到的一种可能方法是,当页面加载时,当您要以角度检查 url 中的哈希值时设置 html5 模式,如果它存在,则只需将其设置为 false,反之亦然

最新更新