нравится этот
return Json(data, JsonRequestBehavior.AllowGet);
объяснение: функция возвращает тип JsonResult, который наследуется ActionResult.
JsonRequestBehavior.AllowGet
:
С этого Ответом why-is-jsonrequestbehavior-needed
Это для защиты от очень конкретной атаки с JSON запросов , которые возвращают данные, используя HTTP GET.
В принципе, если ваш метод действия не возвращает конфиденциальные данные, то он должен быть безопасным для получения.
Тем не менее, MVC помещает его в DenyGet как по умолчанию, чтобы защитить вас от этой атаки. Это заставляет вас рассмотреть последствия данных, что вы разоблачение, прежде чем вы решите выставить его на HTTP GET
если вы планируете перенаправить на основе данных JSon
return Json(new
{
redirectUrl = Url.Action("AccountMyProducts", "Account"),
isredirection= true
});
в вызове успеха Jquery назад функция, не нравится эта
$.ajax({
.... //some other stuffs including url, type, content type.
//then for success function.
success: function(json) {
if (json.isredirection) {
window.location.href = json.redirectUrl;
}
}
});
Вы хотите, чтобы клиент перенаправлял или возвращал данные json? –
Я хочу, чтобы клиент вернул URL-адрес из redirectAction – user473104