サーバノードでJWTを使用して、ユーザが接続しているかどうかを確認します。観測可能で AuthGuard私のユーザーが接続されている場合、それがチェックされます:AuthGuardからブール値を返す - 角度4
canActivate(): Observable<any> {
if (!localStorage.getItem('currentUser')){
return Observable.of(false);
}
// Authorization with JWT Token
const options = {
headers: new HttpHeaders().set('Authorization', 'BEARER ' + localStorage.getItem('currentUser'))
};
//Check if the JWT Token is always available and if the signature is right
return this.http.get(environment.api + 'checkToken', options)
.map(() => true).catch(() => {
return Observable.of(false);
});
}
を今、私は、他のコンポーネントにcanActivateからブール値を放出したいと思います。私の他のコンポーネントは私のウェブサイトのnav-barです。ユーザーが切断されたときに、ナビゲーションバーのリンクを非表示にしたいしかし、私はユーザーが接続されているときにいくつかの要素を表示したいと思います。
しかし、私のnavbarコンポーネントのコンストラクタでobservableを使用しても、ユーザーが接続されているかどうかは1回だけチェックされます。
AuthGuardからNavbarコンポーネントにブール値を出力する方法はありますか?
あなたは