我在自己的网站上使用第三方服务,拥有自己的身份验证流程。有机会重置密码。此功能具有以下流程。您将成为电子邮件,其中包含yoursite.com/#xxx=123456
上的链接进入此页面后,第三方库被下载,经过一些初始化过程后,它会检查#xxx = \ d + fragment的位置URL以进行一些ajax调用并提示一些ui模式
var hashKeyElements = window.location.toString().match('#xxx=(.*)');
没有办法改变他们这样做的方式。 这是问题 - Angular将yoursite.com/#xxx=123456重写为yoursite.com/#/xxx=123456,之后regexp不匹配
我尝试在url中创建double#但它会导致错误。
更新:使用角度1.2.4,它不是SPA,不应通过pushState阻止和推送所有相关链接
谢谢
答案 0 :(得分:0)
在您提到您没有使用客户端路由后,我再次检查并且似乎angular.js(所有版本)不会向URL添加哈希(/#/),除非您使用$locationProvider
或{ {1}}即使$routeProvider
。
`
你需要使用html5Mode - docs:
html5Mode=false