Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
AJAX:如何获取关于权限拒绝的信息_Ajax_Asp.net Mvc 3 - Fatal编程技术网

AJAX:如何获取关于权限拒绝的信息

AJAX:如何获取关于权限拒绝的信息,ajax,asp.net-mvc-3,Ajax,Asp.net Mvc 3,我有一个ASP.NET MVC应用程序,其中我通过AJAX调用方法: $.ajax({ dataType: 'json', url: "/Admin/AllowVideoUpload", type: "POST", data: { val: val }, error: function () { alert('Error');

我有一个ASP.NET MVC应用程序,其中我通过AJAX调用方法:

        $.ajax({
            dataType: 'json',
            url: "/Admin/AllowVideoUpload",
            type: "POST",
            data: { val: val },
            error: function () {
                alert('Error');
            }
        });

如果成功-客户端没有任何事情发生,如果出错-获取“错误”消息。但错误可能是由不同的原因造成的——“AllowVideoUpload”方法中存在问题或用户丢失了其凭据(AdminController具有“Authorize(Roles=“Admin”)属性)。我想区分这两种类型的错误。怎么做

这些是您的应用程序级错误。因此,它应该在成功处理程序中处理

您可以从操作方法返回
json
,该方法有一个Status/Error code/Message元素,您可以在其中提到错误原因

错误示例Json

{
    "Status": "Failed",
    "Message": "Authentication Failed"
}
成功的示例Json

{
    "Status": "Success",
    "Message": "Successfully Updated"
}
阅读jSon,然后您可以决定下一步要做什么。可能是向用户显示消息

$.ajax({
        dataType: 'json',
        url: "/Admin/AllowVideoUpload",
        type: "POST",
        data: { val: val },
        success:function(data){
           if(data.Status=="Success")
           {
               //operation success. do whatever
           }
           else if(data.Status=="Failed")
           {
             alert(data.Message);
           }
        },
        error: function () {
            alert('Error');
        }
});

@user285336:您的应用程序特定错误。jQuery ajax错误事件用于处理在进行ajax调用时发生的错误(例如:请求失败等)。无论您提到什么,都是您的应用程序级错误。这可能是错误的其他原因,即用户在执行ajax调用结束之前离开页面。将调用“error”部分。我想将身份验证问题与其他问题区别开来。无论如何,我不明白如何将身份验证错误与未完成的ajax调用区分开来