skttl
08/26/2024, 12:04 PMTarik
08/26/2024, 2:30 PM// CorsComposer.cs
using Microsoft.AspNetCore.Builder;
using Microsoft.Extensions.DependencyInjection;
using Umbraco.Cms.Core.Composing;
using Umbraco.Cms.Core.DependencyInjection;
public class CorsComposer : IComposer
{
public void Compose(IUmbracoBuilder builder)
{
builder.Services.AddCors(options =>
{
options.AddPolicy("AstraCorsPolicy", builder =>
{
builder.WithOrigins("https://192.168.1.12:5001") // Specify allowed origins
.AllowAnyMethod()
.AllowAnyHeader();
});
});
}
}
//CorsMiddlewareComposer.cs
using System;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Umbraco.Cms.Core.Composing;
using Umbraco.Cms.Core.DependencyInjection;
using Microsoft.Extensions.DependencyInjection;
public class CorsMiddlewareComposer : IComposer
{
public void Compose(IUmbracoBuilder builder)
{
builder.Services.AddTransient<IStartupFilter, CorsStartupFilter>();
}
}
public class CorsStartupFilter : IStartupFilter
{
public Action<IApplicationBuilder> Configure(Action<IApplicationBuilder> next)
{
return app =>
{
// Ensure CORS is applied between UseRouting and UseEndpoints
app.UseRouting();
app.UseCors("AstraCorsPolicy");
next(app);
};
}
}
//AstraController.cs
using Microsoft.AspNetCore.Mvc;
using Umbraco.Cms.Core.Services;
using Umbraco.Cms.Web.Common.Controllers;
using System;
using System.Collections.Generic;
using System.Linq;
using Umbraco.Cms.Core.Models;
using Umbraco.Cms.Core.Models.PublishedContent;
using Microsoft.AspNetCore.Cors;
using Microsoft.AspNetCore.Authorization;
namespace Astra.Controllers
{
[EnableCors("AstraCorsPolicy")]
public class AstraController : UmbracoApiController
{...
Tarik
08/27/2024, 6:07 PMbuilder
is accessible but how to access the WithMiddleware
of the app.useUmbraco()
not found!skttl
08/28/2024, 6:21 AM