现在公司有一个项目,有一个需求,当从外部网址登录进来之后,会自动重定向到home页,如下:http://localhost:8889/?sessionId=4724-3551655957868--736132069sh#!/app/home
,然后需要将之前提前保存的目的网址(如目的网址是 dashboard页)取出,重定向到目的网址,如window.location.href="http://localhost:8889/app/dashboard"
。现在要求,网址中必须不包含sessionId。重定向到dashboard页之后,此时网址是http://localhost:8889/#!/app/dashboard
,正常,没有sessionId;但是当用户点击浏览器回退按钮时,回退到home页,此时网址为http://localhost:8889/?sessionId=4724-3551655957868--736132069sh#!/app/home
。为了解决回退到home页时网址中,存在session的问题。
我目前的思路是当用户从登录页重定向到home页时,利用history
对象的window.history.replaceState({},'','http://localhost:8889/#!/app/home')
,改变当前路径的url为http://localhost:8889/#!/app/home
,这样当用户从dashboard页点击浏览器回退按钮时,网址中就不再包含session。
但是,问题时,我才用上述操作之后,连跳转到dashboard页,也变为了http://localhost:8889/?sessionId=4724-3551655957868--736132069sh#!/app/dashboard
。我很纳闷,为什么在修改了 浏览器历史清单 之后,地址栏没有发生相应的改变。
有知道的同学,麻烦指点下,谢谢!
哔哔one
相关分类