前两天,有人提出BUG,说点击详情页会跳转到登陆页,但是别人的又是正常的。自己试验了一番,发现换了最新的谷歌浏览器(版本 89.0.4389.90)之后,确实点连接会跳转到登陆页。
debug发现,请求头token为空,网上去查资料,这才发现是 谷歌浏览器的版本问题,详情见https://stackoverflow.com/questions/66473527。
大致原因是,谷歌浏览器 89版本之后,对_blank的跳转行为做了限制,主动添加了 rel =“ noopener”属性,导致新页面不共享旧页面的sessionStorage。
解决方法:主动添加 rel="opener" 属性即可,如下。
<a href="#" rel="opener" target="_blank">跳转</a>