а еще совет, не используйте dojox.data.JsonRestStore, ничего крутого в нем нет.
используйте добрые: dojo.xhrPost, dojo.xhrGet. И обрабатывайте любые
ошибки в методе handle.
19.05.12, Pavel Trizno<pavel....@googlemail.com> написал(а):
> Вы меня не так поняли. Мне надо повесить каллбек на приходящие коды ответа
> сервера отличные от 200.
>
> --
> Вы получили это сообщение, поскольку подписаны на группу RU DojoToolkit JS
> Framework.
>
> Просмотреть это обсуждение в Сети можно по адресу
> https://groups.google.com/d/msg/ru-dojo-js-framework/-/uIOMMR3gWtgJ.
> Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу
> ru-dojo-js...@googlegroups.com.
> Чтобы отменить подписку на эту группу, отправьте сообщение по адресу
> ru-dojo-js-frame...@googlegroups.com.
> О дополнительных функциях можно узнать в группе по адресу
> http://groups.google.com/group/ru-dojo-js-framework?hl=ru.
>
>
вот так, обрабатываю я: http://pastie.org/3943643
21.05.12, Ильдар Гильфанов<igil...@gmail.com> написал(а):
dojo.declare методы get, put, query, remove у dojo/store/JsonRest. По сути все сведется к добавлению пресловутого handle в xhr. Я просто думал что есть какой то более элегантный способ.
как вариант: http://pastie.org/3943593а еще совет, не используйте dojox.data.JsonRestStore, ничего крутого в нем нет.
используйте добрые: dojo.xhrPost, dojo.xhrGet. И обрабатывайте любые
ошибки в методе handle.
19.05.12, Pavel Trizno<pavel.trizno@googlemail.com> написал(а):
> Вы меня не так поняли. Мне надо повесить каллбек на приходящие коды ответа
> сервера отличные от 200.
>
> --
> Вы получили это сообщение, поскольку подписаны на группу RU DojoToolkit JS
> Framework.
>
> Просмотреть это обсуждение в Сети можно по адресу
> https://groups.google.com/d/msg/ru-dojo-js-framework/-/uIOMMR3gWtgJ.
> Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу
> Чтобы отменить подписку на эту группу, отправьте сообщение по адресу
Просмотреть это обсуждение в Сети можно по адресу https://groups.google.com/d/msg/ru-dojo-js-framework/-/1QZdCQMA46kJ.
Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу ru-dojo-js...@googlegroups.com.
Чтобы отменить подписку на эту группу, отправьте сообщение по адресу ru-dojo-js-frame...@googlegroups.com.
Для работы с гридами лучше всего подходит dojox.data.QueryReadStore, так как там есть возможность использовать серверный пейджинг.Конечно, если вам нужно загружать не большое количество даных то подойдут и другие.
2012/5/21 Pavel Trizno <pavel....@googlemail.com>
Я использую dojo/store/JsonRest в связке с dgrid. Т.к. болшая часть приложения это работа с гридом хочется иметь единый интерфейс для работы с данынми а не пладить костыли на xhrGet/xhrPost. Тем более JsonRest это обвертка над xhrGet/xhrPost. По ссылке что вы дали работа с именно с dojox.data.JsonRest эо мне не подходит.
Сам склоняюсь уже к тому чтобы просто переопределить черезdojo.declare методы get, put, query, remove у dojo/store/JsonRest. По сути все сведется к добавлению пресловутого handle в xhr. Я просто думал что есть какой то более элегантный способ.
понедельник, 21 мая 2012 г., 12:20:34 UTC+4 пользователь Ильдар Гильфанов написал:
как вариант: http://pastie.org/3943593а еще совет, не используйте dojox.data.JsonRestStore, ничего крутого в нем нет.
используйте добрые: dojo.xhrPost, dojo.xhrGet. И обрабатывайте любые
ошибки в методе handle.
19.05.12, Pavel Trizno<pavel.trizno@googlemail.com> написал(а):
> Вы меня не так поняли. Мне надо повесить каллбек на приходящие коды ответа
> сервера отличные от 200.
>
> --
> Вы получили это сообщение, поскольку подписаны на группу RU DojoToolkit JS
> Framework.
>
> Просмотреть это обсуждение в Сети можно по адресу
> https://groups.google.com/d/msg/ru-dojo-js-framework/-/uIOMMR3gWtgJ.
> Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу
> ru-dojo-js-framework@googlegroups.com.
> Чтобы отменить подписку на эту группу, отправьте сообщение по адресу
> О дополнительных функциях можно узнать в группе по адресу
> http://groups.google.com/group/ru-dojo-js-framework?hl=ru.
>
>
--
Вы получили это сообщение, поскольку подписаны на группу RU DojoToolkit JS Framework.
Просмотреть это обсуждение в Сети можно по адресу https://groups.google.com/d/msg/ru-dojo-js-framework/-/1QZdCQMA46kJ.
Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу ru-dojo-js-framework@googlegroups.com.
Просмотреть это обсуждение в Сети можно по адресу https://groups.google.com/d/msg/ru-dojo-js-framework/-/Ae--I09A9w4J.
Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу ru-dojo-js...@googlegroups.com.
Чтобы отменить подписку на эту группу, отправьте сообщение по адресу ru-dojo-js-frame...@googlegroups.com.
2012/5/21 Pavel Trizno <pavel....@googlemail.com>
2012/5/21 Pavel Trizno <pavel....@googlemail.com>
Чтобы отменить подписку на эту группу, отправьте сообщение по адресу ru-dojo-js-framework+unsubscrib...@googlegroups.com.
О дополнительных функциях можно узнать в группе по адресу http://groups.google.com/group/ru-dojo-js-framework?hl=ru.
--
Вы получили это сообщение, поскольку подписаны на группу RU DojoToolkit JS Framework.
Просмотреть это обсуждение в Сети можно по адресу https://groups.google.com/d/msg/ru-dojo-js-framework/-/Ae--I09A9w4J.
aspect.after(dojo, "xhr", function(deferred){ // returning a value replaces the return value
//до отправки запроса
return deferred.then(function(response){ return dojo.fromJson(response); //при удачных http-статусов }); }); var parsedResponse = dojo.xhr("GET", {...});
aspect.around(require.modules['dojo/request/xhr'], 'result', function(originalXhr){ return function(url, options, returnDeferred){ var dfd = new Deferred(); // Logic before making the xhr call originalXhr(url, options, returnDeferred) .then(function(response) { // Logic handling the response but before resolving the deferred. dfd.resolve(vm); // Logic after resolving the deferred. }, function(err){ // error handling? dfd.reject(msgs); }, function(update) { dfd.progress(update); }); return dfd; }; });