Получить значения из localStorage для использования в Sencha Touch AJAX Proxy
В моем приложении 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'
}
}
}
});
Однако значения auth_token и user_email возвращаются как "неопределенные", когда в инструментах разработчика Chrome я ясно вижу эти значения. Кроме того, я получаю доступ к этим ценностям во многих других местах в моем прикосновении Сенча приложение, но не может сделать это в самом магазине.
Кто-нибудь может мне сказать, что я делаю не так?Спасибо
1 ответ:
Я решил эту проблему следующим образом. Вместо того, чтобы передавать заголовки в магазине, я передаю заголовки во время запроса, перед загрузкой магазина. Вот код для этого:
Ext.getStore('storeName').getProxy().setUrl(someURL); Ext.getStore('storeName').getProxy().setHeaders( { "auth_token" : activeUserToken, "user_email" : userEmail } ); Ext.getStore('storeName').load();
Надеюсь, что это поможет кому-то еще!