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 1Dzieje 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!