mirror of
				https://github.com/nsnail/Ocelot.git
				synced 2025-11-04 09:15:27 +08:00 
			
		
		
		
	Removed unused usings, removed empty spaces, removed tons os warnings (#903)
This commit is contained in:
		@@ -1,10 +1,3 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Net;
 | 
			
		||||
using System.Net.Http;
 | 
			
		||||
using System.Net.Http.Headers;
 | 
			
		||||
using System.Security.Claims;
 | 
			
		||||
using IdentityServer4.AccessTokenValidation;
 | 
			
		||||
using IdentityServer4.Models;
 | 
			
		||||
using IdentityServer4.Test;
 | 
			
		||||
@@ -13,17 +6,21 @@ using Microsoft.AspNetCore.Hosting;
 | 
			
		||||
using Microsoft.AspNetCore.Http;
 | 
			
		||||
using Microsoft.Extensions.Configuration;
 | 
			
		||||
using Microsoft.Extensions.DependencyInjection;
 | 
			
		||||
using Microsoft.Extensions.Logging;
 | 
			
		||||
using Newtonsoft.Json;
 | 
			
		||||
using Ocelot.Administration;
 | 
			
		||||
using Ocelot.Cache;
 | 
			
		||||
using Ocelot.Configuration.File;
 | 
			
		||||
using Ocelot.DependencyInjection;
 | 
			
		||||
using Ocelot.Middleware;
 | 
			
		||||
using Shouldly;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Net;
 | 
			
		||||
using System.Net.Http;
 | 
			
		||||
using System.Net.Http.Headers;
 | 
			
		||||
using TestStack.BDDfy;
 | 
			
		||||
using Xunit;
 | 
			
		||||
using Ocelot.Administration;
 | 
			
		||||
using Ocelot.IntegrationTests;
 | 
			
		||||
 | 
			
		||||
namespace Ocelot.IntegrationTests
 | 
			
		||||
{
 | 
			
		||||
@@ -62,19 +59,19 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
                .BDDfy();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
         [Fact]
 | 
			
		||||
         public void should_return_response_200_with_call_re_routes_controller()
 | 
			
		||||
         {
 | 
			
		||||
        [Fact]
 | 
			
		||||
        public void should_return_response_200_with_call_re_routes_controller()
 | 
			
		||||
        {
 | 
			
		||||
            var configuration = new FileConfiguration();
 | 
			
		||||
 | 
			
		||||
             this.Given(x => GivenThereIsAConfiguration(configuration))
 | 
			
		||||
                 .And(x => GivenOcelotIsRunning())
 | 
			
		||||
                 .And(x => GivenIHaveAnOcelotToken("/administration"))
 | 
			
		||||
                 .And(x => GivenIHaveAddedATokenToMyRequest())
 | 
			
		||||
                 .When(x => WhenIGetUrlOnTheApiGateway("/administration/configuration"))
 | 
			
		||||
                 .Then(x => ThenTheStatusCodeShouldBe(HttpStatusCode.OK))
 | 
			
		||||
                 .BDDfy();
 | 
			
		||||
         }
 | 
			
		||||
            this.Given(x => GivenThereIsAConfiguration(configuration))
 | 
			
		||||
                .And(x => GivenOcelotIsRunning())
 | 
			
		||||
                .And(x => GivenIHaveAnOcelotToken("/administration"))
 | 
			
		||||
                .And(x => GivenIHaveAddedATokenToMyRequest())
 | 
			
		||||
                .When(x => WhenIGetUrlOnTheApiGateway("/administration/configuration"))
 | 
			
		||||
                .Then(x => ThenTheStatusCodeShouldBe(HttpStatusCode.OK))
 | 
			
		||||
                .BDDfy();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        [Fact]
 | 
			
		||||
        public void should_return_response_200_with_call_re_routes_controller_using_base_url_added_in_file_config()
 | 
			
		||||
@@ -226,7 +223,7 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
                }
 | 
			
		||||
            };
 | 
			
		||||
 | 
			
		||||
             var updatedConfiguration = new FileConfiguration
 | 
			
		||||
            var updatedConfiguration = new FileConfiguration
 | 
			
		||||
            {
 | 
			
		||||
                GlobalConfiguration = new FileGlobalConfiguration
 | 
			
		||||
                {
 | 
			
		||||
@@ -321,7 +318,7 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
                }
 | 
			
		||||
            };
 | 
			
		||||
 | 
			
		||||
             var updatedConfiguration = new FileConfiguration
 | 
			
		||||
            var updatedConfiguration = new FileConfiguration
 | 
			
		||||
            {
 | 
			
		||||
                GlobalConfiguration = new FileGlobalConfiguration
 | 
			
		||||
                {
 | 
			
		||||
@@ -429,14 +426,15 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
                .BDDfy();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
         [Fact]
 | 
			
		||||
         public void should_return_response_200_with_call_re_routes_controller_when_using_own_identity_server_to_secure_admin_area()
 | 
			
		||||
         {
 | 
			
		||||
        [Fact]
 | 
			
		||||
        public void should_return_response_200_with_call_re_routes_controller_when_using_own_identity_server_to_secure_admin_area()
 | 
			
		||||
        {
 | 
			
		||||
            var configuration = new FileConfiguration();
 | 
			
		||||
 | 
			
		||||
            var identityServerRootUrl = "http://localhost:5123";
 | 
			
		||||
 | 
			
		||||
            Action<IdentityServerAuthenticationOptions> options = o => {
 | 
			
		||||
            Action<IdentityServerAuthenticationOptions> options = o =>
 | 
			
		||||
            {
 | 
			
		||||
                o.Authority = identityServerRootUrl;
 | 
			
		||||
                o.ApiName = "api";
 | 
			
		||||
                o.RequireHttpsMetadata = false;
 | 
			
		||||
@@ -444,15 +442,15 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
                o.ApiSecret = "secret";
 | 
			
		||||
            };
 | 
			
		||||
 | 
			
		||||
             this.Given(x => GivenThereIsAConfiguration(configuration))
 | 
			
		||||
                 .And(x => GivenThereIsAnIdentityServerOn(identityServerRootUrl, "api"))
 | 
			
		||||
                 .And(x => GivenOcelotIsRunningWithIdentityServerSettings(options))
 | 
			
		||||
                 .And(x => GivenIHaveAToken(identityServerRootUrl))
 | 
			
		||||
                 .And(x => GivenIHaveAddedATokenToMyRequest())
 | 
			
		||||
                 .When(x => WhenIGetUrlOnTheApiGateway("/administration/configuration"))
 | 
			
		||||
                 .Then(x => ThenTheStatusCodeShouldBe(HttpStatusCode.OK))
 | 
			
		||||
                 .BDDfy();
 | 
			
		||||
         }
 | 
			
		||||
            this.Given(x => GivenThereIsAConfiguration(configuration))
 | 
			
		||||
                .And(x => GivenThereIsAnIdentityServerOn(identityServerRootUrl, "api"))
 | 
			
		||||
                .And(x => GivenOcelotIsRunningWithIdentityServerSettings(options))
 | 
			
		||||
                .And(x => GivenIHaveAToken(identityServerRootUrl))
 | 
			
		||||
                .And(x => GivenIHaveAddedATokenToMyRequest())
 | 
			
		||||
                .When(x => WhenIGetUrlOnTheApiGateway("/administration/configuration"))
 | 
			
		||||
                .Then(x => ThenTheStatusCodeShouldBe(HttpStatusCode.OK))
 | 
			
		||||
                .BDDfy();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        private void GivenIHaveAToken(string url)
 | 
			
		||||
        {
 | 
			
		||||
@@ -476,7 +474,7 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
          private void GivenThereIsAnIdentityServerOn(string url, string apiName)
 | 
			
		||||
        private void GivenThereIsAnIdentityServerOn(string url, string apiName)
 | 
			
		||||
        {
 | 
			
		||||
            _identityServerBuilder = new WebHostBuilder()
 | 
			
		||||
                .UseUrls(url)
 | 
			
		||||
@@ -529,14 +527,14 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
                })
 | 
			
		||||
                .Build();
 | 
			
		||||
 | 
			
		||||
                _identityServerBuilder.Start();
 | 
			
		||||
            _identityServerBuilder.Start();
 | 
			
		||||
 | 
			
		||||
                using (var httpClient = new HttpClient())
 | 
			
		||||
                {
 | 
			
		||||
                    var response = httpClient.GetAsync($"{url}/.well-known/openid-configuration").Result;
 | 
			
		||||
                    response.EnsureSuccessStatusCode();
 | 
			
		||||
                }        
 | 
			
		||||
            using (var httpClient = new HttpClient())
 | 
			
		||||
            {
 | 
			
		||||
                var response = httpClient.GetAsync($"{url}/.well-known/openid-configuration").Result;
 | 
			
		||||
                response.EnsureSuccessStatusCode();
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        private void GivenAnotherOcelotIsRunning(string baseUrl)
 | 
			
		||||
        {
 | 
			
		||||
@@ -669,16 +667,18 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
                    config.AddJsonFile("ocelot.json", false, false);
 | 
			
		||||
                    config.AddEnvironmentVariables();
 | 
			
		||||
                })
 | 
			
		||||
                .ConfigureServices(x => {
 | 
			
		||||
                .ConfigureServices(x =>
 | 
			
		||||
                {
 | 
			
		||||
                    x.AddSingleton(_webHostBuilder);
 | 
			
		||||
                    x.AddOcelot()
 | 
			
		||||
                    .AddAdministration("/administration", configOptions);
 | 
			
		||||
                    })
 | 
			
		||||
                    .Configure(app => {
 | 
			
		||||
                })
 | 
			
		||||
                    .Configure(app =>
 | 
			
		||||
                    {
 | 
			
		||||
                        app.UseOcelot().Wait();
 | 
			
		||||
                    });
 | 
			
		||||
 | 
			
		||||
              _builder = _webHostBuilder.Build();
 | 
			
		||||
            _builder = _webHostBuilder.Build();
 | 
			
		||||
 | 
			
		||||
            _builder.Start();
 | 
			
		||||
        }
 | 
			
		||||
@@ -728,12 +728,14 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
                    config.AddJsonFile("ocelot.json", false, false);
 | 
			
		||||
                    config.AddEnvironmentVariables();
 | 
			
		||||
                })
 | 
			
		||||
                .ConfigureServices(x => {
 | 
			
		||||
                .ConfigureServices(x =>
 | 
			
		||||
                {
 | 
			
		||||
                    x.AddSingleton(_webHostBuilder);
 | 
			
		||||
                    x.AddOcelot()
 | 
			
		||||
                        .AddAdministration("/administration", "secret");
 | 
			
		||||
                })
 | 
			
		||||
                .Configure(app => {
 | 
			
		||||
                .Configure(app =>
 | 
			
		||||
                {
 | 
			
		||||
                    app.UseOcelot().Wait();
 | 
			
		||||
                });
 | 
			
		||||
 | 
			
		||||
@@ -804,7 +806,7 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
                {
 | 
			
		||||
                    app.UsePathBase("/foo");
 | 
			
		||||
                    app.Run(async context =>
 | 
			
		||||
                    {   
 | 
			
		||||
                    {
 | 
			
		||||
                        context.Response.StatusCode = 200;
 | 
			
		||||
                        await context.Response.WriteAsync("foo");
 | 
			
		||||
                    });
 | 
			
		||||
@@ -825,7 +827,7 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
                {
 | 
			
		||||
                    app.UsePathBase("/bar");
 | 
			
		||||
                    app.Run(async context =>
 | 
			
		||||
                    {   
 | 
			
		||||
                    {
 | 
			
		||||
                        context.Response.StatusCode = 200;
 | 
			
		||||
                        await context.Response.WriteAsync("bar");
 | 
			
		||||
                    });
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@ using Newtonsoft.Json;
 | 
			
		||||
 | 
			
		||||
namespace Ocelot.IntegrationTests
 | 
			
		||||
{
 | 
			
		||||
    class BearerToken
 | 
			
		||||
    internal class BearerToken
 | 
			
		||||
    {
 | 
			
		||||
        [JsonProperty("access_token")]
 | 
			
		||||
        public string AccessToken { get; set; }
 | 
			
		||||
 
 | 
			
		||||
@@ -1,13 +1,5 @@
 | 
			
		||||
using Xunit;
 | 
			
		||||
 | 
			
		||||
namespace Ocelot.IntegrationTests
 | 
			
		||||
{
 | 
			
		||||
    using System;
 | 
			
		||||
    using System.Collections.Generic;
 | 
			
		||||
    using System.IO;
 | 
			
		||||
    using System.Net;
 | 
			
		||||
    using System.Net.Http;
 | 
			
		||||
    using System.Net.Http.Headers;
 | 
			
		||||
    using Configuration.File;
 | 
			
		||||
    using DependencyInjection;
 | 
			
		||||
    using global::CacheManager.Core;
 | 
			
		||||
@@ -15,13 +7,18 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
    using Microsoft.Extensions.Configuration;
 | 
			
		||||
    using Microsoft.Extensions.Logging;
 | 
			
		||||
    using Newtonsoft.Json;
 | 
			
		||||
    using Ocelot.Administration;
 | 
			
		||||
    using Ocelot.Cache.CacheManager;
 | 
			
		||||
    using Ocelot.Middleware;
 | 
			
		||||
    using Shouldly;
 | 
			
		||||
    using System;
 | 
			
		||||
    using System.Collections.Generic;
 | 
			
		||||
    using System.IO;
 | 
			
		||||
    using System.Net;
 | 
			
		||||
    using System.Net.Http;
 | 
			
		||||
    using System.Net.Http.Headers;
 | 
			
		||||
    using TestStack.BDDfy;
 | 
			
		||||
    using Xunit;
 | 
			
		||||
    using Ocelot.Administration;
 | 
			
		||||
    using Ocelot.IntegrationTests;
 | 
			
		||||
    using Ocelot.Cache.CacheManager;
 | 
			
		||||
 | 
			
		||||
    public class CacheManagerTests : IDisposable
 | 
			
		||||
    {
 | 
			
		||||
@@ -107,7 +104,7 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
                .Then(x => ThenTheStatusCodeShouldBe(HttpStatusCode.NoContent))
 | 
			
		||||
                .BDDfy();
 | 
			
		||||
        }
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
        private void GivenIHaveAddedATokenToMyRequest()
 | 
			
		||||
        {
 | 
			
		||||
            _httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", _token.AccessToken);
 | 
			
		||||
@@ -219,6 +216,5 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
            _httpClient?.Dispose();
 | 
			
		||||
            _identityServerBuilder?.Dispose();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -4,23 +4,23 @@ using Xunit;
 | 
			
		||||
 | 
			
		||||
namespace Ocelot.IntegrationTests
 | 
			
		||||
{
 | 
			
		||||
    using Microsoft.AspNetCore.Builder;
 | 
			
		||||
    using Microsoft.AspNetCore.Hosting;
 | 
			
		||||
    using Microsoft.AspNetCore.Http;
 | 
			
		||||
    using Microsoft.Extensions.Configuration;
 | 
			
		||||
    using Newtonsoft.Json;
 | 
			
		||||
    using Ocelot.Configuration.File;
 | 
			
		||||
    using Ocelot.DependencyInjection;
 | 
			
		||||
    using Ocelot.Middleware;
 | 
			
		||||
    using Shouldly;
 | 
			
		||||
    using System;
 | 
			
		||||
    using System.Collections.Generic;
 | 
			
		||||
    using System.IO;
 | 
			
		||||
    using System.Net.Http;
 | 
			
		||||
    using Microsoft.AspNetCore.Builder;
 | 
			
		||||
    using Microsoft.AspNetCore.Hosting;
 | 
			
		||||
    using Newtonsoft.Json;
 | 
			
		||||
    using Ocelot.Configuration.File;
 | 
			
		||||
    using Shouldly;
 | 
			
		||||
    using TestStack.BDDfy;
 | 
			
		||||
    using Microsoft.AspNetCore.Http;
 | 
			
		||||
    using System.Threading.Tasks;
 | 
			
		||||
    using Microsoft.Extensions.Configuration;
 | 
			
		||||
    using Ocelot.DependencyInjection;
 | 
			
		||||
    using Ocelot.Middleware;
 | 
			
		||||
    using System.Linq;
 | 
			
		||||
    using System.Net;
 | 
			
		||||
    using System.Net.Http;
 | 
			
		||||
    using System.Threading.Tasks;
 | 
			
		||||
    using TestStack.BDDfy;
 | 
			
		||||
 | 
			
		||||
    public class HeaderTests : IDisposable
 | 
			
		||||
    {
 | 
			
		||||
@@ -180,8 +180,8 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
            var header = _response.Content.ReadAsStringAsync().Result;
 | 
			
		||||
 | 
			
		||||
            bool passed = false;
 | 
			
		||||
            
 | 
			
		||||
            if(header == windowsOrMac || header == linux) 
 | 
			
		||||
 | 
			
		||||
            if (header == windowsOrMac || header == linux)
 | 
			
		||||
            {
 | 
			
		||||
                passed = true;
 | 
			
		||||
            }
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,4 @@
 | 
			
		||||
using System.Reflection;
 | 
			
		||||
using System.Runtime.CompilerServices;
 | 
			
		||||
using System.Runtime.InteropServices;
 | 
			
		||||
 | 
			
		||||
// General Information about an assembly is controlled through the following
 | 
			
		||||
@@ -16,4 +15,4 @@ using System.Runtime.InteropServices;
 | 
			
		||||
[assembly: ComVisible(false)]
 | 
			
		||||
 | 
			
		||||
// The following GUID is for the ID of the typelib if this project is exposed to COM
 | 
			
		||||
[assembly: Guid("d4575572-99ca-4530-8737-c296eda326f8")]
 | 
			
		||||
[assembly: Guid("d4575572-99ca-4530-8737-c296eda326f8")]
 | 
			
		||||
 
 | 
			
		||||
@@ -1,13 +1,5 @@
 | 
			
		||||
namespace Ocelot.IntegrationTests
 | 
			
		||||
{
 | 
			
		||||
    using System;
 | 
			
		||||
    using System.Collections.Generic;
 | 
			
		||||
    using System.IO;
 | 
			
		||||
    using System.Linq;
 | 
			
		||||
    using System.Net.Http;
 | 
			
		||||
    using System.Net.Http.Headers;
 | 
			
		||||
    using System.Threading;
 | 
			
		||||
    using System.Threading.Tasks;
 | 
			
		||||
    using Administration;
 | 
			
		||||
    using Configuration.File;
 | 
			
		||||
    using DependencyInjection;
 | 
			
		||||
@@ -17,14 +9,19 @@
 | 
			
		||||
    using Microsoft.Extensions.DependencyInjection;
 | 
			
		||||
    using Middleware;
 | 
			
		||||
    using Newtonsoft.Json;
 | 
			
		||||
    using Ocelot.Provider.Rafty;
 | 
			
		||||
    using Rafty.Infrastructure;
 | 
			
		||||
    using Shouldly;
 | 
			
		||||
    using System;
 | 
			
		||||
    using System.Collections.Generic;
 | 
			
		||||
    using System.IO;
 | 
			
		||||
    using System.Linq;
 | 
			
		||||
    using System.Net.Http;
 | 
			
		||||
    using System.Net.Http.Headers;
 | 
			
		||||
    using System.Threading;
 | 
			
		||||
    using System.Threading.Tasks;
 | 
			
		||||
    using Xunit;
 | 
			
		||||
    using Xunit.Abstractions;
 | 
			
		||||
    using Ocelot.Administration;
 | 
			
		||||
    using Ocelot.IntegrationTests;
 | 
			
		||||
    using Ocelot.Provider.Rafty;
 | 
			
		||||
    using Ocelot.Infrastructure;
 | 
			
		||||
    using Rafty.Infrastructure;
 | 
			
		||||
    using Wait = Rafty.Infrastructure.Wait;
 | 
			
		||||
 | 
			
		||||
    public class RaftTests : IDisposable
 | 
			
		||||
 
 | 
			
		||||
@@ -1,21 +1,20 @@
 | 
			
		||||
using Microsoft.AspNetCore.Builder;
 | 
			
		||||
using Microsoft.AspNetCore.Hosting;
 | 
			
		||||
using Microsoft.AspNetCore.Http;
 | 
			
		||||
using Microsoft.Extensions.Configuration;
 | 
			
		||||
using Newtonsoft.Json;
 | 
			
		||||
using Ocelot.Configuration.File;
 | 
			
		||||
using Ocelot.DependencyInjection;
 | 
			
		||||
using Ocelot.Middleware;
 | 
			
		||||
using Shouldly;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Concurrent;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Net.Http;
 | 
			
		||||
using Microsoft.AspNetCore.Builder;
 | 
			
		||||
using Microsoft.AspNetCore.Hosting;
 | 
			
		||||
using Newtonsoft.Json;
 | 
			
		||||
using Ocelot.Configuration.File;
 | 
			
		||||
using Shouldly;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using TestStack.BDDfy;
 | 
			
		||||
using Xunit;
 | 
			
		||||
using Microsoft.AspNetCore.Http;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
using System.Collections.Concurrent;
 | 
			
		||||
using Microsoft.Extensions.Configuration;
 | 
			
		||||
using Microsoft.Extensions.Logging;
 | 
			
		||||
using Ocelot.DependencyInjection;
 | 
			
		||||
using Ocelot.Middleware;
 | 
			
		||||
 | 
			
		||||
namespace Ocelot.IntegrationTests
 | 
			
		||||
{
 | 
			
		||||
@@ -177,7 +176,7 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
 | 
			
		||||
        private void ThenTheSameHeaderValuesAreReturnedByTheDownstreamService()
 | 
			
		||||
        {
 | 
			
		||||
            foreach(var result in _results)
 | 
			
		||||
            foreach (var result in _results)
 | 
			
		||||
            {
 | 
			
		||||
                result.Result.ShouldBe(result.Random);
 | 
			
		||||
            }
 | 
			
		||||
@@ -190,7 +189,7 @@ namespace Ocelot.IntegrationTests
 | 
			
		||||
            _downstreamBuilder?.Dispose();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        class ThreadSafeHeadersTestResult
 | 
			
		||||
        private class ThreadSafeHeadersTestResult
 | 
			
		||||
        {
 | 
			
		||||
            public ThreadSafeHeadersTestResult(int result, int random)
 | 
			
		||||
            {
 | 
			
		||||
 
 | 
			
		||||
@@ -7,4 +7,4 @@
 | 
			
		||||
      "Microsoft": "Error"
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1 +1,57 @@
 | 
			
		||||
{"ReRoutes":[{"DownstreamPathTemplate":"/","UpstreamPathTemplate":"/","UpstreamHttpMethod":"Get","AuthenticationOptions":{"Provider":null,"ProviderRootUrl":null,"ApiName":null,"RequireHttps":false,"AllowedScopes":[],"ApiSecret":null},"AddHeadersToRequest":{},"AddClaimsToRequest":{},"RouteClaimsRequirement":{},"AddQueriesToRequest":{},"RequestIdKey":null,"FileCacheOptions":{"TtlSeconds":0},"ReRouteIsCaseSensitive":false,"ServiceName":null,"DownstreamScheme":"http","DownstreamHost":"localhost","DownstreamPort":51879,"QoSOptions":{"ExceptionsAllowedBeforeBreaking":0,"DurationOfBreak":0,"TimeoutValue":0},"LoadBalancer":null,"RateLimitOptions":{"ClientWhitelist":[],"EnableRateLimiting":false,"Period":null,"PeriodTimespan":0.0,"Limit":0}}],"GlobalConfiguration":{"RequestIdKey":null,"ServiceDiscoveryProvider":{"Provider":null,"Host":null,"Port":0},"AdministrationPath":null,"RateLimitOptions":{"ClientIdHeader":"ClientId","QuotaExceededMessage":null,"RateLimitCounterPrefix":"ocelot","DisableRateLimitHeaders":false,"HttpStatusCode":429}}}
 | 
			
		||||
{
 | 
			
		||||
  "ReRoutes": [
 | 
			
		||||
    {
 | 
			
		||||
      "DownstreamPathTemplate": "/",
 | 
			
		||||
      "UpstreamPathTemplate": "/",
 | 
			
		||||
      "UpstreamHttpMethod": "Get",
 | 
			
		||||
      "AuthenticationOptions": {
 | 
			
		||||
        "Provider": null,
 | 
			
		||||
        "ProviderRootUrl": null,
 | 
			
		||||
        "ApiName": null,
 | 
			
		||||
        "RequireHttps": false,
 | 
			
		||||
        "AllowedScopes": [],
 | 
			
		||||
        "ApiSecret": null
 | 
			
		||||
      },
 | 
			
		||||
      "AddHeadersToRequest": {},
 | 
			
		||||
      "AddClaimsToRequest": {},
 | 
			
		||||
      "RouteClaimsRequirement": {},
 | 
			
		||||
      "AddQueriesToRequest": {},
 | 
			
		||||
      "RequestIdKey": null,
 | 
			
		||||
      "FileCacheOptions": { "TtlSeconds": 0 },
 | 
			
		||||
      "ReRouteIsCaseSensitive": false,
 | 
			
		||||
      "ServiceName": null,
 | 
			
		||||
      "DownstreamScheme": "http",
 | 
			
		||||
      "DownstreamHost": "localhost",
 | 
			
		||||
      "DownstreamPort": 51879,
 | 
			
		||||
      "QoSOptions": {
 | 
			
		||||
        "ExceptionsAllowedBeforeBreaking": 0,
 | 
			
		||||
        "DurationOfBreak": 0,
 | 
			
		||||
        "TimeoutValue": 0
 | 
			
		||||
      },
 | 
			
		||||
      "LoadBalancer": null,
 | 
			
		||||
      "RateLimitOptions": {
 | 
			
		||||
        "ClientWhitelist": [],
 | 
			
		||||
        "EnableRateLimiting": false,
 | 
			
		||||
        "Period": null,
 | 
			
		||||
        "PeriodTimespan": 0.0,
 | 
			
		||||
        "Limit": 0
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "GlobalConfiguration": {
 | 
			
		||||
    "RequestIdKey": null,
 | 
			
		||||
    "ServiceDiscoveryProvider": {
 | 
			
		||||
      "Provider": null,
 | 
			
		||||
      "Host": null,
 | 
			
		||||
      "Port": 0
 | 
			
		||||
    },
 | 
			
		||||
    "AdministrationPath": null,
 | 
			
		||||
    "RateLimitOptions": {
 | 
			
		||||
      "ClientIdHeader": "ClientId",
 | 
			
		||||
      "QuotaExceededMessage": null,
 | 
			
		||||
      "RateLimitCounterPrefix": "ocelot",
 | 
			
		||||
      "DisableRateLimitHeaders": false,
 | 
			
		||||
      "HttpStatusCode": 429
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,18 +1,19 @@
 | 
			
		||||
{
 | 
			
		||||
	"Peers": [{
 | 
			
		||||
			"HostAndPort": "http://localhost:5000"
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			"HostAndPort": "http://localhost:5002"
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			"HostAndPort": "http://localhost:5003"
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			"HostAndPort": "http://localhost:5004"
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			"HostAndPort": "http://localhost:5001"
 | 
			
		||||
		}
 | 
			
		||||
	]
 | 
			
		||||
}
 | 
			
		||||
  "Peers": [
 | 
			
		||||
    {
 | 
			
		||||
      "HostAndPort": "http://localhost:5000"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "HostAndPort": "http://localhost:5002"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "HostAndPort": "http://localhost:5003"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "HostAndPort": "http://localhost:5004"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "HostAndPort": "http://localhost:5001"
 | 
			
		||||
    }
 | 
			
		||||
  ]
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user