我突然遇到一种奇怪的行为。
奇怪的网址参数已添加到网站中,我认为我不会在代码中的任何位置添加它们。
我正在使用webpack 4和Vue。这种情况在IE上发生,包括Edge在内的所有版本都没有发生在本地Chrome中,但是当我们部署到开发服务器时就会发生这种情况。
这是我的网络标签
如您所见,服务器加载没有查询参数的页面,并在加载后添加它们。
是否有人遇到过同样的问题,可以帮助找出原因?
对不起,我无法提供更多相关信息。我只是不知道这可能来自哪里。
答案 0 :(得分:0)
问题在于我将vue-router parseQuery设置为async函数,如下所示:
async parseQuery(q) {
let queryString = q;
if (q.includes('token')) {
const data = JSON.parse(`{"${decodeURI(q.replace(/&/g, '","').replace(/=/g, '":"'))}"}`);
const jwtDecodedToken = jwtDecode(data.token);
store.dispatch('Auth/setToken', `Bearer ${data.token}`);
await store.dispatch('Auth/login');
router.push({
name: 'complete',
params: {
id: jwtDecodedToken.order_id, confirmNavigation: true,
},
});
queryString = '';
}
return queryString;
},

我猜vue-router不支持将parseQuery作为异步函数