【问题标题】:How to implement Server Object in Swagger Document?如何在 Swagger 文档中实现服务器对象?
【发布时间】:2021-05-18 12:10:54
【问题描述】:

我是招摇的新手。我的要求是在 swagger json 中添加服务器对象。以下是一个示例服务器对象:

servers:
- url: https://api.openweathermap.org/data/2.5/

我们是否需要在 startup.cs 文件中为 AddSwaggerGen() 配置一些东西来实现这一点?

或者是否有任何配置选项来设置服务器 URL,我们可以在哪里为不同的环境指定多个服务器 URL?

【问题讨论】:

    标签: c# asp.net-core swagger


    【解决方案1】:

    使用UseSwagger方法配置Swagger中间件时需要这样做:

    app.UseSwagger(options =>
    {
        options.PreSerializeFilters.Add((swagger, httpReq) =>
        {
            swagger.Servers = new List<OpenApiServer>
            {
                // You can add as many OpenApiServer instances as you want by creating them like below
                new OpenApiServer
                {
                    // You can set the Url from the default http request data or by hard coding it
                    // Url = $"{httpReq.Scheme}://{httpReq.Host.Value}",
                    Url = "https://api.openweathermap.org/data/2.5", 
                    Description = "Open Weather Map"
                }
            };
        });
    });
    

    【讨论】:

    • 我搜索了一段时间如何以编程方式配置 swagger,这个答案对我帮助很大。从 swagger. 我可以访问整个 OpenApi 对象。谢谢!
    猜你喜欢
    • 2016-02-05
    • 2021-05-26
    • 2018-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多