В настоящее время я пытаюсь внедрить аутентификацию Azure в мое угловое приложениеК сожалению, я сталкиваюсь с ошибкой, которую не понимаю.В моем приложении я вызываю функцию tryLogin из пакета angular-oauth2-oidc.Вход в систему работает до тех пор, пока эта функция не будет вызвана, так как он выдает мне следующую ошибку:
ERROR Error: Uncaught (in promise): TypeError: Cannot read property 'nonceStateSeparator' of null
TypeError: Cannot read property 'nonceStateSeparator' of null
at OAuthService.push../node_modules/angular-oauth2-oidc/esm5/angular-oauth2-oidc.js.OAuthService.tryLogin
Функция входа в систему, похоже, работает, так как она возвращает токены в качестве параметров в URL-адресе в приложении.
Мой код:
export class AppComponent implements OnInit {
title = 'test';
constructor(private oauthService: OAuthService) {
}
private async ConfigureAuth(): Promise<void> {
this.oauthService.loginUrl = 'loginurl';
this.oauthService.clientId = 'clientid';
this.oauthService.resource = 'resource';
this.oauthService.logoutUrl = 'logoutUrl';
this.oauthService.redirectUri = window.location.origin + '/';
this.oauthService.scope = 'openid';
this.oauthService.oidc = true;
this.oauthService.setStorage(sessionStorage);
}
async ngOnInit() {
console.log('Starting ngInit');
await this.ConfigureAuth();
console.log('Await passed ngInit');
this.oauthService.tryLogin({}); //ERROR here
console.log('TryLogin passed ngInit');
if(!this.oauthService.getAccessToken()) {
console.log('no accestoken - ngInit');
await this.oauthService.initImplicitFlow();
}
console.log(this.oauthService.getAccessToken());
console.log('Finished ngInit');
}
}
Я надеюсь, что кто-то может помочь мне с этим вопросом.