在 OpenAPI v3 中,可以使用 Swashbuckle DocumentFilter 删除它们,您可以在启用 Swagger 的位置进行注册:
services.AddSwaggerGen(c => {
c.DocumentFilter<OpenApiDocumentFilter>();
});
文档过滤器删除所有您不需要的路径:
public class OpenApiDocumentFilter(OpenApiMetadata metadata) : IDocumentFilter
{
public void Apply(OpenApiDocument doc, DocumentFilterContext context)
{
doc.Paths.Remove("/auth");
doc.Paths.Remove("/auth/{provider}");
doc.Paths.Remove("/assignroles");
doc.Paths.Remove("/unassignroles");
}
}
在 Open API v2 中,可以使用
ApiDeclarationFilter
删除它们,例如:
Plugins.Add(new OpenApiFeature
{
ApiDeclarationFilter = doc => {
doc.Paths.Remove("/auth");
doc.Paths.Remove("/auth/{provider}");
doc.Paths.Remove("/assignroles");
doc.Paths.Remove("/unassignroles");
}
});