#angular
#angular
Вопрос:
Я вроде как новичок в Angular. Недавно я присоединился к проекту, в котором перехватчики аутентификации были подключены условно, зависит от среды. Это хорошо сработало при компиляции JIT, но поскольку я пытаюсь переместить проект при компиляции AOT, авторизация завершается сбоем с ошибкой 401. Похоже, что перехватчик не работает
На самом деле я не понимаю, где копать, потому что environment.isSbrf возвращает false
/*imports here*/
let providers: Array<any> = [
{ provide: AuthService, useClass: AgentAuthService },
{ provide: WorkflowStateService, useClass: AgentWorkflowStateService },
/*other providers here*/
];
console.log(environment);
if (!environment.isSbrf) {
providers.unshift({ provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true });
providers.unshift({ provide: HTTP_INTERCEPTORS, useClass: AuthAgentIdInterceptor, multi: true });
}
@NgModule({
imports: [
CommonModule,
HttpClientModule,
ServicesModule,
FormsModule,
ReactiveFormsModule,
AuthModule,
/*other modules here*/
],
providers: providers,
declarations: [
/*components here*/
]
})
export class AgentModule { }
я ожидаю, что получу токен из локального хранилища в Auth interceptor, как я работаю с компиляцией JIT, но это не работает с AOT.
Ответ №1:
Я думаю, что это было решено убедитесь, что у вас установлена последняя версия angular см. Проблему в github https://github.com/angular/angular/issues/18293