From 5cd7cdc9c088aea06b307534f0130130b45addaf Mon Sep 17 00:00:00 2001 From: be beet <63141491+beetcb@users.noreply.github.com> Date: Mon, 8 Mar 2021 17:50:07 +0800 Subject: [PATCH] feat(crawler): optimize set cookie parse logic --- crawler/casLogIn.js | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/crawler/casLogIn.js b/crawler/casLogIn.js index 854ea4e..447fba4 100644 --- a/crawler/casLogIn.js +++ b/crawler/casLogIn.js @@ -122,19 +122,19 @@ module.exports = async (school, user) => { /** * refresh cookie in headers (for next request) * - * @param {Object} headers refresh target - * @param {Object} res response object - * @param {Object} cookie + * @param {object} headers refresh target + * @param {object} res response object + * @return {boolean} true if set-cookie exists */ function reCook(res, isCas) { - let cook try { - cook = res.headers.raw()['set-cookie'] - cook.forEach(e => { + const setCookieList = res.headers.raw()['set-cookie'] + setCookieList.forEach(e => { + const content = e.split(';').shift() if (e.includes('authserver')) { - cookie.swms += e.match(/^(\w|\d|\s)+\=(\w|\d|\s|\-)+;/)[0] + cookie.swms += `${content}; ` } else { - cookie.campusphere += e.match(/^(\w|\d|\s)+\=(\w|\d|\s|\-)+;/)[0] + cookie.campusphere += `${content}; ` } }) } catch (e) {