Отображение интерфейса сервера идентификации с отсутствующей структурой

#asp.net-core #asp.net-identity #identityserver4

Вопрос:

Я создал пустое asp.net основное веб — приложение, в котором в программе настроен identityserver4. По какой-то причине, когда я запускаю программу, браузер выглядит так

введите описание изображения здесь

вместо того, как это должно выглядеть

введите описание изображения здесь

Программа не была запущена на .net 6.0, потому что в ней говорилось, что не удалось найти индекс/, но я загрузил шаблоны IdentityServer4, запустив cmds dotnet new -i identityserver4.templates , и dotnet newis4ui это дало мне пользовательский интерфейс, который включает /index . Смотрите этот github для пользовательского интерфейса сервера идентификации. Поэтому я затем переключил его с .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 в своем браузере, думая, что это поможет, но этого не произошло.

Комментарии:

1. Попробуйте добавить app.UseStaticFiles(); в свой Configure метод.

2. Это сработало! Спасибо!

Ответ №1:

Из предоставленных вами скриншотов видно, что ни один из js css файлов or не загружен. Вы должны добавить app.UseStaticFiles() это раньше app.UseRouting() . Это исправит проблему

Комментарии:

1. Спасибо! Это определенно решило проблему!