Con l'avvento di .NET 9, la generazione dei documenti OpenAPI in ASP.NET Core ha subito una significativa evoluzione, introducendo un supporto integrato che semplifica e ottimizza il processo di documentazione delle API.
OpenAPI è uno standard ampiamente adottato per la definizione e la documentazione delle API HTTP, impropriamente conosciuto come Swagger, che è in realtà una libreria. Fornisce un modo standardizzato per descrivere endpoint, formati di richiesta e risposta, schemi di autenticazione e altri dettagli essenziali delle API.
// program.cs builder.Services.AddOpenApi();
Inserendo questa semplice istruzione, tutti i metodi che potranno essere ricollegati a API HTTP verranno documentati all'interno di un file. Questo tipo di implementazione porta anche ad un importante vantaggio, che fino ad ora non era disponibile: il pieno supporto alla compliazione AOT.
Attenzione la libreria Swagger ci sarà comunque di aiuto, perchè è grazie a Swashbuckle.AspNetCore.SwaggerUI che riusciremo a visualizzare l'interfaccia grafica che ci permetterà di testare con pochi click tutti i nostri endpoints. Rispetto alla configurazione precedente, che lavorava per convenzioni, dato che sia la creazione del documento, che l'interfaccia erano gestite dalla stessa libreria, da ora dovremo specificare noi il documento da interpretare.
// program.cs app.UseSwaggerUI(options => options.SwaggerEndpoint("/openapi/v1.json", "Mio progetto API"));
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Migliorare i tempi di risposta di GPT tramite lo streaming endpoint in ASP.NET Core
Disabilitare automaticamente un workflow di GitHub (parte 2)
Gestire eccezioni nei plugin di Semantic Kernel in ASP.NET Core Web API
.NET Conference Italia 2024
Creare una libreria CSS universale: Cards
Eseguire script pre e post esecuzione di un workflow di GitHub
Applicare un filtro per recuperare alcune issue di GitHub
Utilizzare DeepSeek R1 con Azure AI
Aprire una finestra di dialogo per selezionare una directory in WPF e .NET 8
Gestione file Javascript in Blazor con .NET 9
Cambiare la chiave di partizionamento di Azure Cosmos DB