|
|
@@ -189,6 +189,43 @@ async function checkNeedExplore(phone, password, token) {
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+function stringifyCookies(arr) {
|
|
|
+ let skipArr = ['path', 'Path', 'Httponly', 'Domain', 'Expires', 'Max-Age'];
|
|
|
+ let cookieStr = '';
|
|
|
+ for (let i = 0; i < arr.length; i++) {
|
|
|
+ const obj = arr[i];
|
|
|
+ for (let k in obj) {
|
|
|
+ if (skipArr.indexOf(k) == -1) {
|
|
|
+ cookieStr += `${k}=${obj[k]};`;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return cookieStr.substring(0, cookieStr.length - 1);
|
|
|
+}
|
|
|
+
|
|
|
+function parseSetCookie(text) {
|
|
|
+ let arr = text.split(";");
|
|
|
+ let cookies = [];
|
|
|
+ for (let i = 0; i < arr.length; i++) {
|
|
|
+ let arr1 = arr[i].trim().split(',');
|
|
|
+ let obj = {};
|
|
|
+ for (let j = 0; j < arr1.length; j++) {
|
|
|
+ const str = arr1[j].trim();
|
|
|
+ if (str.indexOf('=')) {
|
|
|
+ let kv = str.split('=');
|
|
|
+ let k = kv[0].trim();
|
|
|
+ let v = kv[1].trim();
|
|
|
+ obj[k] = v;
|
|
|
+ } else {
|
|
|
+ obj[str] = true;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ cookies.push(obj);
|
|
|
+ }
|
|
|
+ return stringifyCookies(cookies);
|
|
|
+}
|
|
|
+
|
|
|
function loadIndex() {
|
|
|
return new Promise((resolve, _reject) => {
|
|
|
try {
|
|
|
@@ -216,10 +253,10 @@ function loadIndex() {
|
|
|
let cookie = _response.headers['Set-Cookie'];
|
|
|
if (cookie) {
|
|
|
let key = `${thwjStoreKeyPrefix}CommonCookieKey`;
|
|
|
- lk.log(cookie);
|
|
|
- // lk.setVal(key, cookie);
|
|
|
- // CommonCookie = cookie;
|
|
|
- // CommonHeaders['Cookie'] = CommonCookie;
|
|
|
+ cookie = parseSetCookie(cookie);
|
|
|
+ lk.setVal(key, cookie);
|
|
|
+ CommonCookie = cookie;
|
|
|
+ CommonHeaders['Cookie'] = CommonCookie;
|
|
|
}
|
|
|
}
|
|
|
}
|