/ / Jak uruchomić IdentityServer i WebAPI w tym samym projekcie - c #, asp.net-web-api, asp.net-tożsamość, tożsamość serwer3

Jak uruchomić IdentityServer i WebAPI w tym samym projekcie - c #, asp.net-web-api, asp.net-identity, identityserver3

Obecnie mam działający serwer tożsamościidealnie, ale chcę dodać interfejs API, aby wprowadzić zmiany konfiguracji bazy danych za pośrednictwem interfejsu WWW. Przykłady w dokumentach pokazują, jak to zrobić za pomocą MVC, ale nie WebAPI.

Metoda Startup.Configuration wygląda następująco:

app.UseIdentityServer(new IdentityServerOptions{ ... });

...

app.Map("/api", apiApp =>
{
apiApp.UseIdentityServerBearerTokenAuthentication(new IdentityServerBearerTokenAuthenticationOptions
{
Authority = "https://localhost:44300", // URL of identity server
});
});

Jednak kiedy app.Map zostanie wywołany, zgłasza błąd, ponieważ nie może dotrzeć do serwera tożsamości, prawdopodobnie dlatego, że jeszcze się nie uruchomił. Jak mogę zmusić je do prawidłowej współpracy?

Odpowiedzi:

11 dla odpowiedzi nr 1

Dzieje się tak zawsze, gdy publikuję posty na StackOverflow. Zrozumiałem to kilka sekund po opublikowaniu! Dla każdego, kto ma ten problem, w

IdentityServerBearerTokenAuthenticationOptions

zestaw

DelayLoadMetadata = true

i wtedy wszystko będzie działać płynnie!