모든 구성 요소를 통해 액세스 할 수있는 글로벌 서비스를 설정하려고합니다.이 서비스를 사용하여 역할, 이름 등과 같은 사용자 관련 정보를 저장하고 나중에 모든 구성 요소에서 사용하는 것이 좋습니다.각 2 전역 변수
싱글 톤으로 시도했지만 브라우저 새로 고침 후 명확 해졌습니다.
어떻게이 지침을 달성 할 수 있는가?
싱글 톤 서비스는 다음과 같이이다 :
export class Principal{
private isAuthenticated: boolean = false;
private roles: Array<String>;
private fullName: String;
constructor(){} ;
// getter and setter
}
서비스 코드를 추가했습니다. – 4rpit
최종 사용자가 어떻게이 값을 변경할 수 있습니까? – vigamage
@vigamage - 주어진 예제에서 사용자는 앱이 실행되는 동안 디버깅 콘솔을 열고'sessionStorage.setItem ('roles', 'admin');을 입력하여 값을 변경할 수 있습니다. 이것이 브라우저에서 아무것도 신뢰할 수 없어야하는 이유입니다. Angular 앱은 이제 사용자가'admin'라고 생각하기 때문에,'admin' API가 호출 될 때 지원되는 API는 오류를 던져야합니다. – Martin