Как справиться с тайм-аутом сеанса в виде марионетки на главной линии? Из-за таймаута сеанса мой вызов ajax терпит неудачу (метод извлечения возвращает сообщения об ошибках), и мне нужно перенаправить пользователя обратно на страницу входа.Как автоматически перенаправить на страницу входа в систему, когда срок действия сеанса истек в Backbone.js?
ответ
Один из способов сделать это - переопределить Backbone.sync
и проверить возвращаемое значение в случае сбоя. Если это связано с тем, что сеанс завершен, перенаправление на страницу входа в систему, в противном случае обработать ошибку.
Здесь вы можете увидеть пример: https://github.com/davidsulc/marionette-serious-progression-app/blob/master/assets/js/entities/common.js#L107, где неавторизованный доступ обрабатывается иначе, чем «обычные» ошибки. Этот код из моего advanced book on Marionette.
Например:
myModel.fetch({
success: function(){
//do something
},
error: function (model, response, options) {
if(response.status == 401){
window.location.href = '/login';
}
}
});
Это хорошее решение. Но я ищу универсальное решение, в котором оно будет работать для всех моих моделей, коллекций и представлений. Спасибо за ответ. – Sunny
Родовое решением для вас может быть, чтобы использовать JQuery в ajaxSetup
:
var redirectToLogin = function()
{
App.router.navigate('login', true);
};
$.ajaxSetup(
{
statusCode: {
401: redirectToLogin,
403: redirectToLogin
}
});
- 1. Как перенаправить на страницу входа в систему, если срок действия сеанса истек?
- 2. Как перенаправить пользователя на страницу входа, когда токен сеанса истек?
- 3. Как перенаправить на страницу входа в систему, когда сеанс истек (ASP.NET 3.5 FormsAuthen)
- 4. Когда срок действия сессии истек?
- 5. Срок действия истек
- 6. Как узнать, что срок действия сеанса истек?
- 7. Перенаправление на страницу входа в систему, когда токен аутентификации истек.
- 8. Как перенаправить на страницу входа в систему после истечения срока действия сеанса?
- 9. Перенаправление на страницу входа после входа в систему, вызванное попыткой выхода из системы, когда сеанс истек.
- 10. Как перенаправить на страницу после успешного входа?
- 11. Истек срок действия пароля
- 12. Как автоматически перенаправить веб-страницу из ответа ajax, если срок действия сессии истек?
- 13. ReportViewerSession Истек срок действия
- 14. Почему срок действия сессии истек
- 15. Срок действия сеанса
- 16. , как перейти на страницу входа в систему, если сеанс истек
- 17. Срок действия транзакции PayPal истек
- 18. Срок действия сеанса в ASP.NET
- 19. Как использовать AJAX, чтобы определить, истек ли срок действия пользователя, а затем вернуть его на страницу входа?
- 20. проверить, если срок действия PAGE истек, а затем перенаправить
- 21. cacert.pem - срок действия сертификата истек
- 22. как перенаправить на страницу входа, когда сеанс истек в asp.net mvc 3?
- 23. Срок действия рабочего процесса истек
- 24. Как предупредить, когда срок действия сеанса (JWT) истек в React/Redux
- 25. Срок действия токена доступа истек?
- 26. Как сообщить пользователю, что срок его сеанса истек?
- 27. Срок действия сертификата adhoc истек.
- 28. Microsoft ReportViewer - сеанс ASP.NET Истек срок действия
- 29. Перенаправить частичный просмотр страницы входа в систему по окончании сеанса
- 30. Ожидаемый токен CSRF не найден. Срок действия сеанса истек 403
Спасибо за быстрый ответ. Где переопределить этот метод, я переопределяю всю мою модель из базовой модели. Нужно ли переопределять синхронизацию в моей базовой модели? – Sunny
Лучший способ - переопределить его в 'BaseModel'. Затем сделайте свою модель наследованием от нее с помощью BaseeModel.extend ({... '. См. Например https://github.com/davidsulc/marionette-serious-progression-app/blob/30f923059d1d713f4974fb21b0a3206ee4fa90b3/assets/js/entities/ contact.js # L2 –