Re[2]: как обойти дефолтный редирект на Logon?
От: Аноним  
Дата: 06.02.12 06:59
Оценка:
Здравствуйте, Sufflavus, Вы писали:

S>Не пробовали в настройках ajax-запроса указать тип возвращаемых данных — json, и вместо HttpStatusCodeResult(401) возвращать JsonResult и анализировать его на клиенте?

S>
S>if (Request.IsAjaxRequest())
S>{
S>     return new JsonResult { Data = { errorCode = "401" }, JsonRequestBehavior = JsonRequestBehavior.AllowGet };
S>}
S>


Спасибо за идею попробовали, действительно редирект непроисходит!
Но, хотелось бы понять почему в этом случае нет редиректа и есть в случае когда мы сразу возвращаем нужный статус код...

И всё таки хотелось бы в случае успешного логина возвращать статус код=200 с сообщением об успешности. А в случае неуспешного возвращать 401 и сообщение об неуспешности. Такое поведение мне кажется лучше отражает суть происходящего. Предложенный способ позволяет победить редирект, но вынуждает изменить семантику метода (в случае неуспеха возвращать статус код) и выглядит как workaround...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.