簡體   English   中英

如何使用 Swashbucke 在 SwaggerUI 中顯示 IdentityServer 端點

[英]How to display IdentityServer endpoints in SwaggerUI with Swashbucke

我有一個使用 Duende IdentityServer 6 的 ASPNET Core 6 服務,它包括幾個端點,例如 /connect/token 和 /connect/authorize。 我需要這些端點顯示在我的 Swagger UI 頁面中,但是我找不到讓它們顯示的方法。

這是我的AddSwaggerGen

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

            c.AddSecurityDefinition("oauth2", new OpenApiSecurityScheme
            {
                Type = SecuritySchemeType.OAuth2,
                Flows = new OpenApiOAuthFlows
                {
                    ClientCredentials = new OpenApiOAuthFlow
                    {
                        AuthorizationUrl =
                            new Uri($"{builder.Configuration.GetSection("BaseUri").Value}connect/authorize",
                                UriKind.RelativeOrAbsolute),
                        TokenUrl = new Uri($"{builder.Configuration.GetSection("BaseUri").Value}connect/token",
                            UriKind.RelativeOrAbsolute),
                        Scopes = new Dictionary<string, string>
                        {
                            { Constants.Api.ScopeName, "Base level access to API" }
                        }
                    }
                }
            });

            c.AddSecurityRequirement(new OpenApiSecurityRequirement
            {
                {
                    new OpenApiSecurityScheme
                    {
                        Reference = new OpenApiReference { Type = ReferenceType.SecurityScheme, Id = "oauth2" },
                        In = ParameterLocation.Cookie
                    },
                    new string[] { }
                }
            });
        });

我只是在使用基本的app.AddSwagger()app.AddSwaggerUI()

據我的研究表明, CodingMytra是正確的。 IdentityServer 端點必須手動添加到 Swagger 文檔中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM