From 15de46c877c37dee5f7bf6570789131dae55b9dd Mon Sep 17 00:00:00 2001 From: Qstick Date: Sun, 7 Mar 2021 10:41:47 -0500 Subject: [PATCH] Revert "Cleanup Cookie handling in HttpClient" This reverts commit d932beba5046a7a4887625cd322ad53cccd3934f. --- src/NzbDrone.Common/Http/HttpClient.cs | 6 +++--- src/NzbDrone.Common/Http/HttpResponse.cs | 5 +++++ 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/NzbDrone.Common/Http/HttpClient.cs b/src/NzbDrone.Common/Http/HttpClient.cs index e3953665c..8a912c473 100644 --- a/src/NzbDrone.Common/Http/HttpClient.cs +++ b/src/NzbDrone.Common/Http/HttpClient.cs @@ -216,7 +216,7 @@ namespace NzbDrone.Common.Http private void HandleResponseCookies(HttpResponse response, CookieContainer cookieContainer) { - var cookieHeaders = response.Cookies; + var cookieHeaders = response.GetCookieHeaders(); if (cookieHeaders.Empty()) { return; @@ -228,11 +228,11 @@ namespace NzbDrone.Common.Http { var persistentCookieContainer = _cookieContainerCache.Get("container", () => new CookieContainer()); - foreach (Cookie cookieHeader in cookieHeaders) + foreach (var cookieHeader in cookieHeaders) { try { - persistentCookieContainer.Add((Uri)response.Request.Url, cookieHeader); + persistentCookieContainer.SetCookies((Uri)response.Request.Url, cookieHeader); } catch (Exception ex) { diff --git a/src/NzbDrone.Common/Http/HttpResponse.cs b/src/NzbDrone.Common/Http/HttpResponse.cs index db498e186..85ebe9ffc 100644 --- a/src/NzbDrone.Common/Http/HttpResponse.cs +++ b/src/NzbDrone.Common/Http/HttpResponse.cs @@ -59,6 +59,11 @@ namespace NzbDrone.Common.Http StatusCode == HttpStatusCode.TemporaryRedirect || StatusCode == HttpStatusCode.Found; + public string[] GetCookieHeaders() + { + return Headers.GetValues("Set-Cookie") ?? Array.Empty(); + } + public Dictionary GetCookies() { var result = new Dictionary();