Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   AJAX и 302 редирект (https://javascript.ru/forum/misc/47108-ajax-i-302-redirekt.html)

Syndicate 08.05.2014 19:01

AJAX и 302 редирект
 
Как-то можно перехватить 302 Found ?

Пример
Есть форма авторизации. Отправляет стандартно - POST.
Ответ
Если не верно - в теле ответа - эта страница с ошибками
Если все верно - ответ 302 Found + заголовок Location. Браузер сам переходит.

Задача сделать ее при помощи AJAX.

Загвоздка только в том что я не могу перехватить 302...

тут пишут так
http://stackoverflow.com/questions/3...-in-javascript

Но все таки... Как то можно перехватить не меняя ответ сервера?

Octane 08.05.2014 21:37

в jQuery не считается успешным такой ответ:
строка 8124 в jQuery 2.1.0
// Determine if successful
isSuccess = status >= 200 && status < 300 || status === 304;


если поддержка браузеров ниже IE9 не нужна, на чистом JavaScript не намного больше кода будет:
var xhr = new XMLHttpRequest;
xhr.open('POST', url);
xhr.onload = function () {
    if (xhr.status == 304) {
        onSuccess();
    } else {
        onError();
    } 
};
xhr.onerror = onError;
xhr.send(data);


Часовой пояс GMT +3, время: 20:27.