Hey guys! I have some troubles with CORS:
public static IWebHost BuildWebHost(string[] args) => WebHost.CreateDefaultBuilder(args) .UseStartup<Startup>() .Build(); public Startup(IConfiguration configuration) { Configurazioni.Configurazione = configuration; } public void ConfigureServices(IServiceCollection services) { services.AddCors(o => o.AddPolicy("MyPolicy", builder => { builder.AllowAnyOrigin() .AllowAnyMethod() .AllowAnyHeader() .AllowCredentials(); })); } public void Configure(IApplicationBuilder app, IHostingEnvironment env) { app.UseCors("MyPolicy"); app.UseMvc(); } }
This is my controller:
[Produces("application/json")] [Route("api/pubblicazioni")] public class PubblicazioniController : Controller { [HttpGet] [Route("estrai")] public List<Pubblicazione> EstraiPubblicazioni(Int32 idutente, Int32 idultimapubblicazione) { return Pubblicazione.Estrai(idutente, idultimapubblicazione); } }
This is my frontend:
EstraiPubblicazioni(idutente: any, idultimapubblicazione: any) { let params = new URLSearchParams() // params.set('rigainizio', rigainizio); params.set('idutente', idutente); params.set('idultimapubblicazione', idultimapubblicazione); return new Promise((resolve, reject) => { this.http.get(this.conn.connessione+'/api/pubblicazioni/estrai?' + params.toString()) .subscribe( data => { resolve(data); }, error => { reject(error); } ); }); }
What's the problem with this code?
Message from Chrome:
Failed to load http://....../api/pubblicazioni/estrai?idutente=1&idultimapubblicazione=-1: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://.......:81' is therefore not allowed access. The response had HTTP status code 500.