Home > other >  How to add Swagger to NopCommerce 4.5 API plugin?
How to add Swagger to NopCommerce 4.5 API plugin?

Time:11-14

I`ve developed API plugin for NopCommerce 4.5. Is it possible to add Swagger documentation for this API? How can make it?

CodePudding user response:

In the plugin, you need to add a new NopStatup.cs file and configure Swagger middleware.

Example:

public partial class PluginNopStartup : INopStartup
{
    /// <summary>
    /// Add and configure any of the middleware
    /// </summary>
    /// <param name="services">Collection of service descriptors</param>
    /// <param name="configuration">Configuration of the application</param>
    public void ConfigureServices(IServiceCollection services, IConfiguration configuration)
    {
        services.AddSwaggerGen(options =>
        {
            options.SwaggerDoc("v1", new OpenApiInfo
            {
                Version = "v1",
                Title = "ToDo API",
                Description = "An ASP.NET Core Web API for managing ToDo items",
                TermsOfService = new Uri("https://example.com/terms"),
                Contact = new OpenApiContact
                {
                    Name = "Example Contact",
                    Url = new Uri("https://example.com/contact")
                },
                License = new OpenApiLicense
                {
                    Name = "Example License",
                    Url = new Uri("https://example.com/license")
                }
            });
        });
    }

    /// <summary>
    /// Configure the using of added middleware
    /// </summary>
    /// <param name="app">Builder for configuring an application's request pipeline</param>
    public void Configure(IApplicationBuilder app)
    {
        app.UseSwagger();
        app.UseSwaggerUI();
    }

    /// <summary>
    /// Gets order of this startup configuration implementation
    /// </summary>
    public int Order => 1;
}

References: How to configure Swagger to ASP.NET Core.

  • Related