1.0.10-addcookie
This commit is contained in:
parent
3ecf33036c
commit
3c1d369b36
@ -108,4 +108,44 @@ function parseNginxLog (log) {
|
||||
return error;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/*
|
||||
* cookies 解析函数
|
||||
* @param {string} cookiesStr
|
||||
* @return {Array} CookieArray
|
||||
*/
|
||||
function toCookiesArray(cookies) {
|
||||
if (!cookies || cookies.length === 0) return;
|
||||
|
||||
// 解析旧的 cookies
|
||||
const cookieMap = {};
|
||||
cookies.split("; ").forEach(cookie => {
|
||||
const [key, value] = cookie.split("=");
|
||||
if (key) cookieMap[key] = value;
|
||||
});
|
||||
|
||||
return cookieMap;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* cookies 更新函数
|
||||
* @param {Array} setCookieArray 新的 Set-Cookie 数组
|
||||
*/
|
||||
function updateCookies(cookies, setCookieArray) {
|
||||
if (!setCookieArray || setCookieArray.length === 0) return;
|
||||
|
||||
// 解析旧的 cookies
|
||||
const cookieMap = toCookiesArray(cookies);
|
||||
|
||||
// 解析新的 Set-Cookie 数组并更新
|
||||
setCookieArray.forEach(cookieStr => {
|
||||
const cookiePair = cookieStr.split(";")[0]; // 只取 key=value
|
||||
const [key, value] = cookiePair.split("=");
|
||||
if (key) cookieMap[key] = value;
|
||||
});
|
||||
|
||||
// 重新拼接成字符串存回全局 cookies
|
||||
return Object.entries(cookieMap).map(([key, value]) => `${key}=${value}`).join("; ");
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user