IdentityServer 前端显示缺少结构

IdentityServer frontend displaying with missing structure

我创建了一个空的 asp.net 核心 Web 应用程序,在程序中设置了 identityserver4。出于某种原因,当我 运行 程序浏览器看起来像这样

而不是应该的样子

该程序未在 .net 6.0 上 运行ning,因为它说找不到 /index 但我通过 [=41 下载了 IdentityServer4 的模板=] 命令 dotnet new -i identityserver4.templatesdotnet newis4ui 给了我 UI 其中包括 /index。参见 this github for identityserver UI然后我在项目 属性 设置中将它从 .net 6.0 切换到 .net 5.0,但显示了这种奇怪的格式。

startup.cs

public class Startup
    {
        // This method gets called by the runtime. Use this method to add services to the container.
        // For more information on how to configure your application, visit https://go.microsoft.com/fwlink/?LinkID=398940
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddIdentityServer()
                .AddInMemoryClients(Config.Clients)
                .AddInMemoryIdentityResources(Config.IdentityResources)
                .AddInMemoryApiResources(Config.ApiResources)
                .AddInMemoryApiScopes(Config.ApiScopes)
                .AddTestUsers(Config.Users)
                .AddDeveloperSigningCredential();

            services.AddControllersWithViews();

        }

        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            app.UseRouting();

            app.UseIdentityServer();

            app.UseAuthorization();

            app.UseEndpoints(endpoints => endpoints.MapDefaultControllerRoute());
        }
    }

为什么它显示为我的第一个屏幕截图而不是第二个屏幕截图?我清除了我的缓存并删除了浏览器上的 cookie,我认为这样会帮助,但没有。

从您提供的屏幕截图可以看出,加载了 jscss 个文件中的 none 个。您必须在 app.UseRouting() 之前添加 app.UseStaticFiles()。这将解决问题