嗨,我有以下过滤器属性,可以实现控制器角色授权:
public class AccessDeniedAuthorizeAttribute : AuthorizeAttribute
{
public override void OnAuthorization(AuthorizationContext filterContext)
{
base.OnAuthorization(filterContext);
if (filterContext.HttpContext.Request.IsAjaxRequest())
{
// For AJAX requests
// returninr sample error that need to be catch on ajax success
filterContext.Result = new JsonResult { Data= new { errorMessage="Access Blocked!!."} };
}
else
{
if (filterContext.Result is HttpUnauthorizedResult)
{
filterContext.Result = new RedirectResult("~/Account/UnauthorizedRole");
}
}
}
}
在我的客户端 ajax 方面,我有:
$.ajax({
url: url,
context: document.body,
success: function (data) {
$('#imgloading').remove();
},
error: function (xhr, ajaxOptions, thrownError) {
alert('error');
}
});
它总是会产生错误,错误是 500。所以我不知道我做错了什么,因为我只想获取 Data.errorMessage 并将其显示在警报窗口中。
关于为什么我收到服务器错误 500 的任何线索?