Ajax.request(), повторный запрос в случае неудачи
Друзья, помогите, пожалуйста решить задачку.
Когда на сервере заканчивается время жизни сессии, при получении очередного запроса он отдает 401 ошибку. В этом случае я вывожу форму авторизации. В случае успешной авторизации запрос данных нужно повторить. Например, вызывается метод load() у некоего Store. Или submit() некой формы. А сервер возвращает 401. Слушаю requestexception у Ext.Ajax: Ext.Ajax.on({ requestexception: function (conn, response, options) { if ( response.status == 401 ) { //открываю форму авторизации, юзером вводятся логин и пароль, //форма сабмитится, и, в случае успеха, нужно store.load() повторить } } }); Как осуществить повторный вызов того самого store.load() или form.submit() ? |
Я точно незнаю, но разве события exception у proxy непозволяет определить 401 ошибку ???
Если да, то можно заставить каждый store который обламался, делать повторный вызов своего load самостоятельно, а не централизовано как у вас получается при прослушивании requestexception. |
Я не хочу у каждого proxy проверять статус ответа.
Сделал так. Глобально слушаю Ext.Ajax.on({ requestexception: function (conn, response, options) { if ( response.status == 401 ) { //открываю форму авторизации //.... //слушаю событие userlogin у app, которое является ссылкой //на приложение app.on('userlogin', function() { Ext.Ajax.request(options); //всего-то и нужно было, сделать запрос с теми же options }); } } }); Спасибо. |
Часовой пояс GMT +3, время: 19:26. |