mvc 3, jquery ajax и проверка подлинности форм

В моем проекте MVC3 у меня есть контроллер с [Авторизовать] атрибут. У меня есть форма отправки без ajax, которая перенаправляет пользователя (как и ожидалось) на экран входа в систему, если он / она не вошел в систему.

Однако теперь у меня есть форма, которая отправляется с помощью jquery ajax, и как можно Я делаю то же самое? Перенаправить пользователя на экран входа в систему, если он / она не авторизован? После успешного входа в систему пользователь должен быть перенаправлен к начальному действию.

Контроллер

[Authorize]
[ValidateInput(false)] 
public JsonResult SubmitChatMessage(string message)
        {
            if (!string.IsNullOrEmpty(message))
            {
                // Do stuff
            }

            // Return all chat messages
            return GetChatMessages();
        }

Клиент JQUERY

$(document).ready(function () {
    $("form[action$='SubmitChatMessage']").submit(function (event) {
        $.ajax({
            url: $(this).attr("action"),
            type: "post",
            dataType: "json",
            data: $(this).serialize(),
            success: function (response) {
                // do stuff
            }
        });
        return false; 
    });
});

Я вижу из окна консоли firebug, что сервер возвращает:

GET http://domain/Account/LogOn?ReturnUrl=%2fProductDetails%2fSubmitChatMessage

Жду вашей помощи!

ОБНОВЛЕНО с возможными решениями

6
задан Community 23 May 2017 в 12:14
поделиться