Подтвердить что ты не робот

Глобальная обработка ошибок Backbone.js

Я пишу веб-сайт с использованием Backbone.js для веб-интерфейса и собственного сервера RESTful для интерфейса API. Мой сервер API (RESTful) требует авторизации вручную и ожидает маркер безопасности в заголовке "Авторизация". Если токен безопасности устарел или сломан, сервер API вернет ответ с кодом состояния 401. Я переопределяю Backbone.sync, чтобы отправлять дополнительные заголовки с запросами и возвращать options.error(jqXHR.status) по ошибке AJAX.

Как добавить обработчик событий глобальных ошибок для обработки событий options.error(...) при загрузке неудачных ресурсов? Мне нужно, чтобы перенаправление навигации на страницу /#!/signin на ответ 401 Unauthorized.

4b9b3361

Ответ 1

вы можете попробовать использовать обработчик событий jQuery Global Ajax:

http://api.jquery.com/category/ajax/global-ajax-event-handlers/

Вы просто привязываете событие .ajaxError к телу или вашему элементу приложения и фильтруете коды состояния 401.

При ошибке 401 вы перенаправляете свое приложение, например window.yourAppRouter.navigate(...)

Ответ 2

В том же духе к предложению глобального обработчика событий Ajax вы можете справиться с этим с помощью метода jQuery ajaxSetup: fooobar.com/info/146345/...