mirror of
https://github.com/nsnail/Ocelot.git
synced 2025-06-19 04:38:14 +08:00
hacking away
This commit is contained in:
@ -29,31 +29,37 @@ namespace Ocelot.Middleware
|
||||
/// </summary>
|
||||
/// <param name="builder"></param>
|
||||
/// <returns></returns>
|
||||
public static IApplicationBuilder UseOcelot(this IApplicationBuilder builder)
|
||||
public static async Task<IApplicationBuilder> UseOcelot(this IApplicationBuilder builder)
|
||||
{
|
||||
var configuration = CreateConfiguration(builder).Result;
|
||||
|
||||
builder.Map(configuration.AdministrationPath, x =>
|
||||
{
|
||||
x.UseMvc();
|
||||
});
|
||||
|
||||
builder.UseOcelot(new OcelotMiddlewareConfiguration());
|
||||
|
||||
await CreateAdministrationArea(builder);
|
||||
|
||||
await builder.UseOcelot(new OcelotMiddlewareConfiguration());
|
||||
|
||||
return builder;
|
||||
}
|
||||
|
||||
private static async Task CreateAdministrationArea(IApplicationBuilder builder)
|
||||
{
|
||||
var configuration = await CreateConfiguration(builder);
|
||||
|
||||
if(!string.IsNullOrEmpty(configuration.AdministrationPath))
|
||||
{
|
||||
builder.Map(configuration.AdministrationPath, x =>
|
||||
{
|
||||
x.UseMvc();
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Registers Ocelot with a combination of default middlewares and optional middlewares in the configuration
|
||||
/// </summary>
|
||||
/// <param name="builder"></param>
|
||||
/// <param name="middlewareConfiguration"></param>
|
||||
/// <returns></returns>
|
||||
public static IApplicationBuilder UseOcelot(this IApplicationBuilder builder, OcelotMiddlewareConfiguration middlewareConfiguration)
|
||||
public static async Task<IApplicationBuilder> UseOcelot(this IApplicationBuilder builder, OcelotMiddlewareConfiguration middlewareConfiguration)
|
||||
{
|
||||
CreateConfiguration(builder);
|
||||
await CreateAdministrationArea(builder);
|
||||
|
||||
// This is registered to catch any global exceptions that are not handled
|
||||
builder.UseExceptionHandlerMiddleware();
|
||||
|
Reference in New Issue
Block a user