請(qǐng)仔細(xì)觀察你的瀏覽器cookie~
1、問題描述
我們?cè)谌粘i_發(fā)中,有本地調(diào)試,有多個(gè)服務(wù)器的線上調(diào)試部署。從中我觀察到,每次使用同一瀏覽器,如果再次登錄時(shí)我們沒有清理緩存,會(huì)有很多匪夷所思的問題。比如:token在cookie里保存,導(dǎo)致登錄失效。多個(gè)角色登錄時(shí)明明token已經(jīng)更新,但使用的還是舊的token導(dǎo)致登錄失敗等等…
2、思路以及遇到問題
然后我就想到了一個(gè)簡(jiǎn)單粗暴的方法,在單點(diǎn)登錄時(shí)直接刪除全部cookie然后獲取新的token,但是出現(xiàn)了刪除不了全部,只能刪除當(dāng)前域(本地)的cookie…
3、問題解決(曬出全部代碼以及注釋)
(1)問題的核心原因:
不同域(domain)無法全部清除
(2)解決問題的全部代碼與注釋:
delAllCookie() {
//清空全部cookie
var keys = document.cookie.match(/[^ =;]+(?=\=)/g);
if (keys) {
for (var i = keys.length; i--; ) {
document.cookie =
keys[i] + "=0;path=/;expires=" + new Date(0).toUTCString(); //清除當(dāng)前域名下
document.cookie =
keys[i] +
"=0;path=/;domain=" +
document.domain +
";expires=" +
new Date(0).toUTCString();
document.cookie =
keys[i] +
"=0;path=示例:/index.vue(不同域的path,也就是你清除不了的cookie);domain=示例:10.10.10.208(不同域的domain,也就是你清除不了的cookie);expires=" +
new Date(0).toUTCString();
**document.cookie可加多條?。。?!**
}
}
},
4、總結(jié)問題
描述問題時(shí)看似簡(jiǎn)單,但其實(shí)在排查現(xiàn)實(shí)問題時(shí)也是需要清晰思路的,它會(huì)造成很多*疼的問題。當(dāng)然在我們不同的現(xiàn)實(shí)開發(fā)場(chǎng)景,具體問題具體分析。文章來源:http://www.zghlxwxcb.cn/news/detail-415787.html
5、要個(gè)好評(píng)
理解不全面的希望大家可以補(bǔ)充。如果幫到大家了,給個(gè)免費(fèi)的贊吧!~~~~文章來源地址http://www.zghlxwxcb.cn/news/detail-415787.html
到了這里,關(guān)于vue 關(guān)于清除瀏覽器全部cookie的問題及解決方法(絕對(duì)有效)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!