private void HandleResponseCookies(HttpResponse response, CookieContainer cookieContainer) { var cookieHeaders = response.GetCookieHeaders(); if (cookieHeaders.Empty()) { return; } if (response.Request.StoreResponseCookie) { lock (_cookieContainerCache) { var persistentCookieContainer = _cookieContainerCache.Get("container", () => new CookieContainer()); foreach (var cookieHeader in cookieHeaders) { try { persistentCookieContainer.SetCookies((Uri)response.Request.Url, cookieHeader); } catch (Exception ex) { _logger.Debug(ex, "Invalid cookie in {0}", response.Request.Url); } } } } }
private void HandleResponseCookies(HttpResponse response, CookieContainer container) { foreach (Cookie cookie in container.GetAllCookies()) { cookie.Expired = true; } var cookieHeaders = response.GetCookieHeaders(); if (cookieHeaders.Empty()) { return; } AddCookiesToContainer(response.Request.Url, cookieHeaders, container); if (response.Request.StoreResponseCookie) { lock (_cookieContainerCache) { var persistentCookieContainer = _cookieContainerCache.Get("container", () => new CookieContainer()); AddCookiesToContainer(response.Request.Url, cookieHeaders, persistentCookieContainer); } } }