背景:公众号内嵌H5页面。 从公众号进来之后,微信会将用户的code码携带在url后面回调回来,前端拿到code,传给后端来获取用户openId以明确身份
因为code只是刚进页面的时候使用一次,所以用完之后就不应该再出现了。但是在测试过程中发现微信回调回来的code会一直携带在url中,虽然在微信环境下看不到路径,但是如果是在电脑端的微信上访问公众号,就可拿到完整路径,会造成code泄露。虽说code会过期,但是也会给不法分子有可乘之机哈哈哈哈。
首先要知道的是,微信回调回来的参数并不是拼接在url最后面的,而是会夹在中间,可能是因为我用了history模式的原因
而在使用路由跳转时,vue又是根据/#/后面的内容去跳转的,所以导致中间部分的参数会一直存在。
解决:直接使用window.location.herf = 完整干净的路径即可
我们再确认了用户身份之后肯定是要跳转首页的嘛,跳转的时候按照如下操作即可,方法简单粗暴,但是过程也是蜿蜒曲折的,这里就不多赘述了,货要干哈哈哈