2017-08-23 63 views
-1

我正在测试android2手机上的ionic2应用程序,我在想如何保持用户登录到应用程序并仅在用户单击注销按钮后注销?因为每当我关闭应用程序,我必须再次登录如何保持用户登录

+0

你尝试过什么吗?另外,考虑使用会话? – Haris

回答

1

大厦纪的解决方案,你可以存储在localstorage状态的记录。你可以这样设置的localStorage:

您的组件中:

import { Injectable } from '@angular/core'; 
import { Storage } from '@ionic/storage'; 

@Injectable() 
export class StateService { 
    constructor(private _storage: Storage) { } 

    public login(): void { 
     this._storage.set('loggedIn', true); 
    } 

    public logout(): void { 
     this._storage.remove('loggedIn'); 
    } 
} 

一旦用户登录,拨打login()方法将存储状态如此。用户注销时,请致电logout()方法。

您app.component.ts内

constructor() { 
    this._storage.get('loggedIn').then((value:any) => { 
     if(value) { 
      //navigate to whatever page 
     } else { 
      //navigate to log in 
     } 
    }); 
} 

这是基本原则。

+0

谢谢,你们两位真的帮助我很多 – Nouf

1

如果您在处理服务器端,您可以创建一个访问令牌。如果登录仅适用于应用程序。使用本地存储保存值并在用户点击注销时删除。

2

存储用户令牌或状态:localStorage的

localStorage.setItem("loggedInStatus", "active"); 

注销

localStorage.setItem("loggedInStatus", ""); 
+0

这是一个非常基本的答案,但这是应该做的事情的原则。 –