【问题标题】:Get values from localStorage to use in Sencha Touch AJAX Proxy从 localStorage 获取值以在 Sencha Touch AJAX 代理中使用
【发布时间】:2012-09-04 12:24:35
【问题描述】:

在我的 Sencha Touch 应用程序中,我将一些值存储在 localStorage 中,它们存储得很好。稍后我需要将这些值用于对商店的请求,并且需要将这些值作为请求标头传递。代码如下所示:

Ext.define('AppName.store.storeName', {
    extend: 'Ext.data.Store',

    requires: [
        'AppName.model.modelName'
    ],

    config: {
        model: 'AppName.model.modelName',
        storeId: 'storeName',
        proxy: {
            type: 'ajax',
            url: 'http://dynamic',
            headers: {
                auth_token: localStorage.getItem('activeUserToken'),
                user_email: localStorage.getItem('userEMail')
            },
            reader: {
                type: 'json'
            }
        }
    }
});

但是,当我在 Chrome 开发人员工具中清楚地看到这些值时,auth_token 和 user_email 值都被返回为“未定义”。除此之外,我在我的 Sencha Touch 应用程序的许多其他地方访问这些值,但不能在商店本身中这样做。

谁能告诉我我做错了什么?

谢谢

【问题讨论】:

    标签: sencha-touch sencha-touch-2


    【解决方案1】:

    我已经通过以下方式解决了这个问题。在加载存储之前,我没有在存储中传递标头,而是在请求期间传递标头。这是代码:

        Ext.getStore('storeName').getProxy().setUrl(someURL);
            
        Ext.getStore('storeName').getProxy().setHeaders(
             {
                 "auth_token" : activeUserToken,
                 "user_email" : userEmail
             }
        );
    
        Ext.getStore('storeName').load();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-06-25
      • 1970-01-01
      • 2011-10-30
      • 1970-01-01
      • 1970-01-01
      • 2013-04-14
      • 1970-01-01
      • 2012-01-06
      相关资源
      最近更新 更多