Custom Middleware
Customizing the ASP.NET middleware pipeline in Umbraco
Configuring the Cross-Origin Resource Sharing (CORS) middleware
using Umbraco.Cms.Core.Composing;
using Umbraco.Cms.Web.Common.ApplicationBuilder;
public class CorsComposer : IComposer
{
public const string AllowAnyOriginPolicyName = nameof(AllowAnyOriginPolicyName);
public void Compose(IUmbracoBuilder builder)
=> builder.Services
.AddCors(options => options.AddPolicy(AllowAnyOriginPolicyName, policy => policy.AllowAnyOrigin()))
.Configure<UmbracoPipelineOptions>(options => options.AddFilter(new UmbracoPipelineFilter("Cors", postRouting: app => app.UseCors())))
// For testing only
.Configure<UmbracoPipelineOptions>(options => options.AddFilter(new UmbracoPipelineFilter("CorsTest", endpoints: app => app.UseEndpoints(endpoints =>
{
endpoints.MapGet("/echo", context => context.Response.WriteAsync("echo")).RequireCors(AllowAnyOriginPolicyName);
endpoints.MapGet("/echo2", context => context.Response.WriteAsync("echo2"));
}))));
}
Last updated
Was this helpful?