【问题标题】:How to store user session in secha touch 2如何在 secha touch 2 中存储用户会话
【发布时间】:2012-08-13 06:36:30
【问题描述】:

我正在使用 Sencha Touch 2,我有一个登录表单,要求输入用户名和密码 现在我想通过 Session/Cookie 存储用户详细信息,以便用户可以注销,

我浏览了一些我得到的链接

Sencha-touch : save login / password (save session, multi-tasks)

但我是一个新接触开发的新手

任何使用代码示例的帮助对我来说都是非常重要的输入

提前致谢

【问题讨论】:

    标签: extjs sencha-touch-2


    【解决方案1】:

    您可以使用 HTML5 localStore 对象。例如,当用户登录并发出您的服务器请求时,在成功的服务器请求的回调中,您可以存储任何必要的数据。这是我的一个应用程序中的一个 sn-p:

    loginCallback: function(options, success, response) {
            this.mainSplash.setMasked(false);
            var responseOjbect = Ext.JSON.decode(response.responseText);
            if (responseOjbect.success) {
                this.clearLoginStorage(); //runs a function to clear some login storage values
                if (rememberme) {               
                    localStorage.setItem("rememberme", 1);              
                } else {
                    localStorage.setItem("rememberme", 0);
                }   
                localStorage.setItem("userid", responseOjbect.userid);
                localStorage.setItem("first_name", responseOjbect.first_name);
                localStorage.setItem("last_name", responseOjbect.last_name);
                localStorage.setItem("appsettingone", responseOjbect.appsettingone);
                localStorage.setItem("appsettingtwo", responseOjbect.appsettingtwo);
                localStorage.setItem("setdate",  new Date());
    
                if (!this.dashboard) {
                    Ext.create('myApp.view.Dashboard', {
                        //additional config
                    });
                }
                Ext.Viewport.setActiveItem(this.dashboard);
            } else {
                Ext.Msg.alert('Attention', responseOjbect.errorMessage, Ext.emptyFn);
            }
        }
    

    一旦您设置了 localStorage 项目,就可以像这样检索或删除它们:

    localStorage.getItem("user_id"); //retrieve
    localStorage.removeItem("userid"); //remove
    

    因此,当您调用注销功能时,请不要删除您想要保留的任何 localStorage 对象。然后你可以在下次登录时调用 localStorage.getItem("VALUE") 来检索它们

    【讨论】:

    • 嗨,杰弗里,我使用了 localStorage 但没有成功——我的代码 localStorage.setItem("uid", "A"); localStorage.setItem("密码", "B"); var ss =localStorage.getItem("uid"); console.log(retJson.password);
    • 如果我 console.log 你的 ss 变量,同样的代码适用于我...也许查看 HTML5 存储指南会有所帮助
    【解决方案2】:

    这是由服务器而不是客户端管理的东西,所以你想看看,而不是 sencha 本身。

    猜测您正在使用 php,对于一些非常基本的东西,请查看: http://www.html-form-guide.com/php-form/php-login-form.html

    【讨论】:

      猜你喜欢
      • 2014-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-22
      • 2015-11-01
      相关资源
      最近更新 更多