在会话存储中保存用户对象

时间:2017-01-10 08:21:25

标签: angular typescript storage session-storage

我正在使用Angular 2和Typescript,并希望将用户对象保存为全局变量,因此无法多次检索它。我找到了会话存储,现在将用户对象保存在那里。

您认为将它存储在那里是好的做法还是数据过于敏感?如果是这样,我可以使用哪种其他类型的缓存?

以下是我现在使用的代码:

user.service.ts:

{{1}}

当ngOnInit()时,在app.component中调用getProfile()。应用程序的其他组件也需要用户对象。

2 个答案:

答案 0 :(得分:9)

可以在会话存储中获得安全/敏感数据。

由于会话存储仅适用于当前表和域...

如果用户在另一个窗口选项卡中检查相同的会话存储数据,那么它就不会存在....所以它的安全存储....

如果想了解更多信息,请查看sessionStorage

答案 1 :(得分:5)

您可以使用sessionStorage或使用service

您的interface

export interface ISession {
    session:Object
}

您的实际service课程:

    import {Injectable} from '@angular/core';

    @Injectable()
    export class SessionService implements ISession {    
        private _session: session

        constructor(){

        }

        set session(value){
            this._session = value;
        }

        get session(){
            return this._session
        }
   }

现在,您可以将此SessionService类注入其他类constructors并使用它。