mirror of
https://github.com/nsnail/Ocelot.git
synced 2025-06-18 04:03:21 +08:00
fixed some broken tests due to recent merges!
This commit is contained in:
parent
190c967655
commit
6c1b95f95b
@ -22,9 +22,12 @@ namespace Ocelot.Requester
|
|||||||
|
|
||||||
public async Task<Response<HttpResponseMessage>> GetResponse(Request.Request request)
|
public async Task<Response<HttpResponseMessage>> GetResponse(Request.Request request)
|
||||||
{
|
{
|
||||||
var cacheKey = GetCacheKey(request);
|
var builder = new HttpClientBuilder();
|
||||||
|
|
||||||
|
var cacheKey = GetCacheKey(request, builder);
|
||||||
|
|
||||||
|
var httpClient = GetHttpClient(cacheKey, builder);
|
||||||
|
|
||||||
IHttpClient httpClient = GetHttpClient(cacheKey);
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var response = await httpClient.SendAsync(request.HttpRequestMessage);
|
var response = await httpClient.SendAsync(request.HttpRequestMessage);
|
||||||
@ -51,11 +54,10 @@ namespace Ocelot.Requester
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private IHttpClient GetHttpClient(string cacheKey)
|
private IHttpClient GetHttpClient(string cacheKey, IHttpClientBuilder builder)
|
||||||
{
|
{
|
||||||
var builder = new HttpClientBuilder();
|
|
||||||
|
|
||||||
var httpClient = _cacheHandlers.Get(cacheKey);
|
var httpClient = _cacheHandlers.Get(cacheKey);
|
||||||
|
|
||||||
if (httpClient == null)
|
if (httpClient == null)
|
||||||
{
|
{
|
||||||
httpClient = builder.Create();
|
httpClient = builder.Create();
|
||||||
@ -63,9 +65,16 @@ namespace Ocelot.Requester
|
|||||||
return httpClient;
|
return httpClient;
|
||||||
}
|
}
|
||||||
|
|
||||||
private string GetCacheKey(Request.Request request)
|
private string GetCacheKey(Request.Request request, IHttpClientBuilder builder)
|
||||||
{
|
{
|
||||||
string baseUrl = $"{request.HttpRequestMessage.RequestUri.Scheme}://{request.HttpRequestMessage.RequestUri.Authority}";
|
string baseUrl = $"{request.HttpRequestMessage.RequestUri.Scheme}://{request.HttpRequestMessage.RequestUri.Authority}";
|
||||||
|
|
||||||
|
if (request.IsQos)
|
||||||
|
{
|
||||||
|
builder.WithQos(request.QosProvider, _logger);
|
||||||
|
baseUrl = $"{baseUrl}{request.QosProvider.CircuitBreaker.CircuitBreakerPolicy.PolicyKey}";
|
||||||
|
}
|
||||||
|
|
||||||
return baseUrl;
|
return baseUrl;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -45,7 +45,8 @@ namespace Ocelot.AcceptanceTests
|
|||||||
ExceptionsAllowedBeforeBreaking = 1,
|
ExceptionsAllowedBeforeBreaking = 1,
|
||||||
TimeoutValue = 500,
|
TimeoutValue = 500,
|
||||||
DurationOfBreak = 1000
|
DurationOfBreak = 1000
|
||||||
}
|
},
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user