.net Core Swagger Response Example

4 min read Jun 03, 2024
.net Core Swagger Response Example

Intégration de Swagger dans vos API .NET Core : Un guide pratique

Introduction

Swagger est un outil précieux pour documenter et tester vos API RESTful. Il permet de générer automatiquement une documentation interactive et conviviale, facilitant ainsi la compréhension et l'utilisation de votre API par les développeurs. Dans cet article, nous allons explorer comment intégrer Swagger dans vos applications .NET Core et découvrir comment utiliser ses fonctionnalités pour définir des exemples de réponses.

Installation de Swagger

La première étape consiste à installer les packages NuGet nécessaires pour Swagger dans votre projet .NET Core :

Install-Package Swashbuckle.AspNetCore
Install-Package Swashbuckle.AspNetCore.SwaggerUI

Configuration de Swagger

Une fois les packages installés, configurez Swagger dans votre application en ajoutant les lignes suivantes dans la méthode ConfigureServices de votre classe Startup :

public void ConfigureServices(IServiceCollection services)
{
    // ... autres services

    services.AddSwaggerGen(c =>
    {
        c.SwaggerDoc("v1", new OpenApiInfo { Title = "Mon API", Version = "v1" });
    });
}

Définition des exemples de réponses

Swagger vous permet de définir des exemples de réponses pour vos points de terminaison d'API, ce qui améliore la compréhension de leur fonctionnement par les développeurs. Voici comment ajouter des exemples de réponses à votre API :

[HttpGet("clients")]
[ProducesResponseType(typeof(List), StatusCodes.OK)]
[ProducesResponseType(StatusCodes.NotFound)]
public ActionResult> GetClients()
{
    // ... logique de votre API

    // Exemple de réponse 200 (OK)
    var response = new OpenApiResponse
    {
        Description = "Liste des clients",
        Content =
        {
            [MediaTypeNames.Application.Json] = new OpenApiContent
            {
                Schema = new OpenApiSchema
                {
                    Type = "array",
                    Items = new OpenApiSchema
                    {
                        Type = "object",
                        Properties =
                        {
                            ["Id"] = new OpenApiSchema { Type = "integer" },
                            ["Nom"] = new OpenApiSchema { Type = "string" },
                            ["Prenom"] = new OpenApiSchema { Type = "string" }
                        }
                    }
                }
            }
        }
    };

    return Ok(new List
    {
        new Client { Id = 1, Nom = "Dupont", Prenom = "Jean" },
        new Client { Id = 2, Nom = "Martin", Prenom = "Marie" }
    });
}

Dans cet exemple, nous définissons un exemple de réponse pour la route /clients qui retourne une liste de clients au format JSON. La réponse est accompagnée d'une description et de la définition du schéma JSON.

Affichage de Swagger dans votre application

Configurez SwaggerUI dans la méthode Configure de votre classe Startup pour permettre aux utilisateurs d'accéder à la documentation Swagger :

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
    // ... autre configuration

    app.UseSwagger();
    app.UseSwaggerUI(c =>
    {
        c.SwaggerEndpoint("/swagger/v1/swagger.json", "Mon API v1");
    });
}

Conclusion

En utilisant Swagger, vous pouvez facilement documenter et tester vos API .NET Core. La possibilité de définir des exemples de réponses améliore la compréhension et l'utilisation de votre API par les développeurs, ce qui contribue à un développement plus efficace. N'hésitez pas à explorer les fonctionnalités supplémentaires offertes par Swagger pour améliorer encore plus la documentation de votre API.