webview_flutter对cookie进行了重新编码(encodeURIComponent)操作,导致设置在h5端的cookie不生效,需要对cookie进行解码(decodeURIComponent)。
1、首先获取cookie然后进行解码
function getCookie(name) {
let newName = name + '=';
let cookieList = document.cookie.split(';');
for (let i = 0; i < cookieList.length; i++) {
let cValue = cookieList[i].trim();
if (cValue.indexOf(newName) === 0) {
return decodeURIComponent(cValue.substring(newName.length, cValue.length))
}
}
return ''
}
//使用
getCookie('token')
2、重新设置cookie(解决)
function setCookie(name, value) {
document.cookie = name+'='+value+'; path=/';
}
//使用
setCookie('token',getCookie('token'))