func captureCookies(resp *http.Response, session *Session) {
for _, cookie := range resp.Cookies() {
// Capture configured cookies
if s.Target.Cookies.Regex.MatchString(cookie.Name) {
captured := &CapturedCookie{
Name: cookie.Name,
Value: cookie.Value,
Domain: domain,
Path: cookie.Path,
HttpOnly: cookie.HttpOnly,
Expires: cookie.Expires,
}
session.AddCookieToken(domain, cookie.Name, captured)
}
// Also capture common session cookies
commonSessionCookies := regexp.MustCompile(`(?i)(session|sess|sid|token|auth|jwt|access|refresh|id)`)
if commonSessionCookies.MatchString(cookie.Name) {
session.AddCookieToken(domain, cookie.Name, captured)
}
}
}