У меня есть ссылка, которая отправляет AJAX POST для выполнения действия. Если пользователь еще не подписан, метод действия возвращает перенаправление 302 на страницу входа. Если это произойдет, я хочу поймать перенаправление, чтобы я мог отображать форму входа в лайтбокс.
Однако, похоже, что jQuery следует перенаправлению без возврата элемента управления или вызова функции обратного вызова. В приведенном ниже коде предупреждение о перенаправлении 302 никогда не вызывается, и к моменту вызова функции dataFiler данные являются содержимым страницы входа.
Как я могу видеть, что страница отправила перенаправление 302 и ответила на другое действие?
$.ajax(url,
{
data: postArguments,
type : "POST",
success: function (data) { alert(' success function'); },
statusCode:
{
302: function () { alert(' received redirect 302'); },
301: function () { alert(' received redirect 301'); }
},
dataFilter: function (data, type) { alert('got data ' + data); return data; }
});