次のコントローラーメソッドがあります。
[HttpPost]
[Authorize(Roles="some_role_actual_user_is_NOT_in")
public ActionResult AJAXMethod()
{
return Json(new { message = "server message");
}
およびスクリプトを含むページ:
function sendReq()
{
$.ajax({
type: "POST",
data: { somedata: "somedata" },
url: "/Path/To/AJAXMethod",
success: onAJAXSuccess,
error: onAJAXError
});
}
function onAJAXSuccess(response, status, xhr)
{
alert("success: " + response.message);
alert(status);
}
function onAJAXError(xhr,status,error)
{
alert("error: " + status);
alert(error);
}
承認された役割にないユーザーで呼び出すsendReq
と、AJAX呼び出しは引き続き成功します-コールバックonAJAXSuccess
が呼び出されますが、response.message
未定義です。