使用provideKeycloak()中的服务配置

问题描述 投票:0回答:1

Keycloak Angular 已弃用 KeycloakService 的使用。现在推荐的初始化Keycloak的方法是在ApplicationConfig的providers数组中使用provideKeycloak()。我有一个服务从服务器加载我的 Keycloak 配置设置(url、realm、client-id)。如何在 ProvideKeycloak() 中使用这些设置?我注意到在 ProvideKeycloak() 配置对象中有一个“providers”属性,但我不知道如何在这种情况下使用它。

angular keycloak
1个回答
0
投票

您可以进行 API 调用,获取数据,然后使用

bootstrapApplication
进行初始化。

export function initializeApp(): Promise<any> {
  // fetch("https://someUrl.com/api/user") // <- place your API here!
  return firstValueFrom(
    of({
        config: {
          url: 'keycloak-server-url',
          realm: 'realm-id',
          clientId: 'client-id'
        },
        initOptions: {
          onLoad: 'check-sso',
          silentCheckSsoRedirectUri: window.location.origin + '/silent-check-sso.html'
        }
      }) // simulate api call
  );
}

initializeApp().then((config: any) => {
  bootstrapApplication(App, {
    providers: [
      provideHttpClient(),
      provideKeycloak(config),
    ],
  });
});

相关答案 - 如何在ApplicationConfig中注入Service?

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.