mirror of
https://github.com/Prowlarr/Prowlarr.git
synced 2025-09-17 17:14:18 +02:00
Don't persist cookies across requests by default
This commit is contained in:
@@ -351,6 +351,7 @@ namespace NzbDrone.Common.Test.Http
|
|||||||
|
|
||||||
var oldRequest = new HttpRequest($"https://{_httpBinHost2}/get");
|
var oldRequest = new HttpRequest($"https://{_httpBinHost2}/get");
|
||||||
oldRequest.Cookies["my"] = "cookie";
|
oldRequest.Cookies["my"] = "cookie";
|
||||||
|
oldRequest.StoreRequestCookie = true;
|
||||||
|
|
||||||
var oldClient = new HttpClient(Array.Empty<IHttpRequestInterceptor>(), Mocker.Resolve<ICacheManager>(), Mocker.Resolve<IRateLimitService>(), Mocker.Resolve<IHttpDispatcher>(), Mocker.Resolve<Logger>());
|
var oldClient = new HttpClient(Array.Empty<IHttpRequestInterceptor>(), Mocker.Resolve<ICacheManager>(), Mocker.Resolve<IRateLimitService>(), Mocker.Resolve<IHttpDispatcher>(), Mocker.Resolve<Logger>());
|
||||||
|
|
||||||
@@ -362,7 +363,7 @@ namespace NzbDrone.Common.Test.Http
|
|||||||
}
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
public void should_preserve_cookie_during_session()
|
public void should_preserve_cookie_during_session_when_asked()
|
||||||
{
|
{
|
||||||
GivenOldCookie();
|
GivenOldCookie();
|
||||||
|
|
||||||
@@ -395,7 +396,7 @@ namespace NzbDrone.Common.Test.Http
|
|||||||
var requestGet = new HttpRequest($"https://{_httpBinHost}/get");
|
var requestGet = new HttpRequest($"https://{_httpBinHost}/get");
|
||||||
requestGet.Cookies.Add("my", "cookie");
|
requestGet.Cookies.Add("my", "cookie");
|
||||||
requestGet.AllowAutoRedirect = false;
|
requestGet.AllowAutoRedirect = false;
|
||||||
requestGet.StoreRequestCookie = false;
|
requestGet.StoreRequestCookie.Should().BeFalse();
|
||||||
requestGet.StoreResponseCookie = false;
|
requestGet.StoreResponseCookie = false;
|
||||||
var responseGet = Subject.Get<HttpBinResource>(requestGet);
|
var responseGet = Subject.Get<HttpBinResource>(requestGet);
|
||||||
|
|
||||||
@@ -409,12 +410,13 @@ namespace NzbDrone.Common.Test.Http
|
|||||||
}
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
public void should_store_request_cookie()
|
public void should_store_request_cookie_when_asked()
|
||||||
{
|
{
|
||||||
var requestGet = new HttpRequest($"https://{_httpBinHost}/get");
|
var requestGet = new HttpRequest($"https://{_httpBinHost}/get");
|
||||||
requestGet.Cookies.Add("my", "cookie");
|
requestGet.Cookies.Add("my", "cookie");
|
||||||
requestGet.AllowAutoRedirect = false;
|
requestGet.AllowAutoRedirect = false;
|
||||||
requestGet.StoreRequestCookie.Should().BeTrue();
|
requestGet.StoreRequestCookie.Should().BeFalse();
|
||||||
|
requestGet.StoreRequestCookie = true;
|
||||||
requestGet.StoreResponseCookie = false;
|
requestGet.StoreResponseCookie = false;
|
||||||
var responseGet = Subject.Get<HttpBinResource>(requestGet);
|
var responseGet = Subject.Get<HttpBinResource>(requestGet);
|
||||||
|
|
||||||
|
@@ -14,8 +14,6 @@ namespace NzbDrone.Common.Http
|
|||||||
Headers = new HttpHeader();
|
Headers = new HttpHeader();
|
||||||
ConnectionKeepAlive = true;
|
ConnectionKeepAlive = true;
|
||||||
AllowAutoRedirect = true;
|
AllowAutoRedirect = true;
|
||||||
StoreRequestCookie = true;
|
|
||||||
IgnorePersistentCookies = false;
|
|
||||||
Cookies = new Dictionary<string, string>();
|
Cookies = new Dictionary<string, string>();
|
||||||
|
|
||||||
if (!RuntimeInfo.IsProduction)
|
if (!RuntimeInfo.IsProduction)
|
||||||
@@ -40,7 +38,6 @@ namespace NzbDrone.Common.Http
|
|||||||
public bool ConnectionKeepAlive { get; set; }
|
public bool ConnectionKeepAlive { get; set; }
|
||||||
public bool LogResponseContent { get; set; }
|
public bool LogResponseContent { get; set; }
|
||||||
public Dictionary<string, string> Cookies { get; private set; }
|
public Dictionary<string, string> Cookies { get; private set; }
|
||||||
public bool IgnorePersistentCookies { get; set; }
|
|
||||||
public bool StoreRequestCookie { get; set; }
|
public bool StoreRequestCookie { get; set; }
|
||||||
public bool StoreResponseCookie { get; set; }
|
public bool StoreResponseCookie { get; set; }
|
||||||
public TimeSpan RequestTimeout { get; set; }
|
public TimeSpan RequestTimeout { get; set; }
|
||||||
|
@@ -26,6 +26,8 @@ namespace NzbDrone.Common.Http
|
|||||||
public bool LogResponseContent { get; set; }
|
public bool LogResponseContent { get; set; }
|
||||||
public NetworkCredential NetworkCredential { get; set; }
|
public NetworkCredential NetworkCredential { get; set; }
|
||||||
public Dictionary<string, string> Cookies { get; private set; }
|
public Dictionary<string, string> Cookies { get; private set; }
|
||||||
|
public bool StoreRequestCookie { get; set; }
|
||||||
|
public bool StoreResponseCookie { get; set; }
|
||||||
public List<HttpFormData> FormData { get; private set; }
|
public List<HttpFormData> FormData { get; private set; }
|
||||||
|
|
||||||
public Action<HttpRequest> PostProcess { get; set; }
|
public Action<HttpRequest> PostProcess { get; set; }
|
||||||
@@ -102,6 +104,8 @@ namespace NzbDrone.Common.Http
|
|||||||
request.SuppressHttpError = SuppressHttpError;
|
request.SuppressHttpError = SuppressHttpError;
|
||||||
request.UseSimplifiedUserAgent = UseSimplifiedUserAgent;
|
request.UseSimplifiedUserAgent = UseSimplifiedUserAgent;
|
||||||
request.AllowAutoRedirect = AllowAutoRedirect;
|
request.AllowAutoRedirect = AllowAutoRedirect;
|
||||||
|
request.StoreRequestCookie = StoreRequestCookie;
|
||||||
|
request.StoreResponseCookie = StoreResponseCookie;
|
||||||
request.ConnectionKeepAlive = ConnectionKeepAlive;
|
request.ConnectionKeepAlive = ConnectionKeepAlive;
|
||||||
request.RateLimit = RateLimit;
|
request.RateLimit = RateLimit;
|
||||||
request.LogResponseContent = LogResponseContent;
|
request.LogResponseContent = LogResponseContent;
|
||||||
@@ -357,6 +361,20 @@ namespace NzbDrone.Common.Http
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public virtual HttpRequestBuilder StoreRequestCookies(bool val = true)
|
||||||
|
{
|
||||||
|
StoreRequestCookie = val;
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual HttpRequestBuilder StoreResponseCookies(bool val = true)
|
||||||
|
{
|
||||||
|
StoreResponseCookie = val;
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
public virtual HttpRequestBuilder AddFormParameter(string key, object value)
|
public virtual HttpRequestBuilder AddFormParameter(string key, object value)
|
||||||
{
|
{
|
||||||
if (Method != HttpMethod.POST)
|
if (Method != HttpMethod.POST)
|
||||||
|
Reference in New Issue
Block a user