4 messaggi dal 15 maggio 2012
Buongiorno,
Ho sviluppato una webapi in asp Net core (e una app angular per il front end), e volevo pubblicarla su IIS del mio pc (pc desktop windows 10).
Il problema è che mi restituisce il seguente errore: "...No 'Access-Control-Allow-Origin' header is present on the requested resource.", mentre se provo con entrambi i progetti in "debug" funziona tutto alla perfezione.
Ecco il codice che ho utilizzato nella classe Startup:
public void ConfigureServices(IServiceCollection services)
{
...
    services.AddCors();

...
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
...
    app.UseCors(x => x
        .AllowAnyOrigin()
        .AllowAnyMethod()
        .AllowAnyHeader());


N.B. Uso "Visual studio code", non ho visual studio, quindi ho creato i progetti separatamente e li debbuggo in due istanze separate di Visual studio code e non uso Mvc, ma
...
services.AddControllers();
...
app.UseEndpoints(endpoints => { endpoints.MapControllers(); });
4 messaggi dal 15 maggio 2012
Ho finalmente risolto il problema:
Avevo abilitato su IIS la "Basic Authentication", peccato che la "Basic Authentication" di IIS sia diversa da quello che ho implementato (ho creato una "BasicAuthenticationHandler" che legge gli header e autorizza la richiesta).
Il problema era che IIS (o Angular, o Chrome, non so) mi stampava nella console javascript errore nei CORS e non 401 come avrebbe dovuto. La soluzione è stata disabilitare tutte le altre autenticazioni (funziona se è abilitata solo la "anonymous authentication")

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.