如何保持用户登录

时间:2017-08-23 07:43:48

标签: angular ionic2

我在Android手机上测试一个ionic2应用程序,我想知道如何让用户登录到应用程序并在用户点击注销按钮后才能注销?因为每次关闭应用程序时我都必须再次登录

3 个答案:

答案 0 :(得分:2)

将用户令牌或状态存储在localStorage

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

注销后

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

答案 1 :(得分:1)

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

答案 2 :(得分:1)

基于Kishore的解决方案,您可以将登录状态存储在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()方法,该方法将状态存储为true。当用户注销时,请调用logout()方法。

在app.component.ts内部

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

这是基本原则。