You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET Core Identity自动生成端点未在Swagger显示,授权异常求助

ASP.NET Core Identity API端点未显示在Swagger中的排查方案
  • 启用Swagger对非控制器端点的支持
    Identity通过MapIdentityApi注册的端点属于非控制器端点,Swagger默认不会生成这些端点的文档。需要在AddSwaggerGen配置中开启相关选项:

    builder.Services.AddSwaggerGen(options =>
    {
        options.IncludeNonControllerEndpoints = true;
    });
    
  • 确认端点注册顺序
    确保MapIdentityApi<IdentityUser>()的注册位置正确,必须在授权中间件之后、端点映射阶段配置:

    app.UseRouting();
    
    app.UseAuthentication();
    app.UseAuthorization();
    
    app.MapIdentityApi<IdentityUser>();
    app.MapControllers();
    

    错误的顺序会导致端点无法被Swagger捕获,甚至无法正常注册。

  • 检查Identity服务配置完整性
    确认AddIdentityApiEndpoints已关联数据库上下文,缺少EF存储会导致服务不完整:

    builder.Services.AddIdentityApiEndpoints<IdentityUser>()
        .AddEntityFrameworkStores<ApplicationDbContext>();
    
  • 排查Swagger UI的过滤规则
    检查UseSwaggerUI中是否存在过滤非控制器端点的配置,比如DefaultModelsExpandDepth(-1)或自定义筛选逻辑,这类设置可能隐藏Identity自动生成的端点。

  • 确认Swagger的启用环境
    若仅在开发环境启用Swagger,生产环境下不会显示任何Swagger文档,需确保当前运行环境符合Swagger的启用条件。


内容的提问来源于stack exchange,提问作者David Pugh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 18:49:58