401 перенаправление не работает, когда сеанс истекает

Кто-нибудь еще сталкивался с этой проблемой? Интернет просто дает мне телефонную книгу по номеру 401, когда я гуглю.

Я настроил свой jQuery ajax для перенаправления обратно на мою страницу входа, когда веб-метод возвращает 401.

Это отлично работает, если кто-то не вошел в систему и пытается это сделать, но если срок действия сеанса истек, это не сработает. Он просто сидит там. У кого-нибудь еще есть эта проблема?

Заранее спасибо!

Ясность

Он возвращает 401, если, скажем, я запускаю свой браузер после загрузки, моя страница все еще кэшируется, и я пытаюсь использовать ajax для веб-метода. Когда это происходит, моя обработка ошибок jQuery для кода 401 перенаправляет на страницу входа в систему, как я сказал.

Однако если срок действия моего сеанса истекает, похоже, что он отправляет 401, но обработка ошибок jQuery ajax для кода 401 не срабатывает.

Если это помогает, на моих старых страницах на стороне сервера, когда срок действия сеанса истекает, и я пытаюсь что-то сделать, я получаю страницу «имя пользователя и пароль не могут быть нулевыми», которая также не может перенаправить на страницу входа в систему, как обычно.

Отличается ли ошибка 401 от истечения сеанса от ошибки 401 от просто отсутствия сеанса?

Спасибо всем за ваш вклад!


person Community    schedule 15.11.2012    source источник
comment
Действительно ли метод возвращает 401, если кто-то вошел в систему? Это может быть не так, и это может быть причиной того, что вы неправильно перенаправляете.   -  person Quintin Robinson    schedule 16.11.2012


Ответы (1)


Это ответ на вопрос "как искать" - то, что вы ищете, это "код статуса http 401", который является "Неавторизованным" (RFC2616, т.е. http://www.w3.org/Protocols/rfc2616/).rfc2616-sec10.html)

Для сервера имеет смысл возвращать эту ошибку, когда он по какой-либо причине не может проверить авторизацию пользователя. Так что я не думаю, что у кого-то есть проблемы с этим.

person Alexei Levenkov    schedule 15.11.2012