c# - 从 jquery AJAX 调用 web 方法时身份验证失败

标签 c# jquery asp.net ajax webmethod

在这里我从 Jquery Ajax 调用 web 方法。在成功函数中我看到有一个名为“身份验证失败”的错误

这里附上错误图片 Error

我的网络方法

[WebMethod,ScriptMethod]
public static List<UploadedFiles> GetAllUploadedFiles()
{
    List<UploadedFiles> UploadedFilesDetails = new List<UploadedFiles>();
    try
    {
        SqlCommand comGetAllFiles = new SqlCommand("SP_GetAllUploadedFiles", conDB);
        comGetAllFiles.CommandType = CommandType.StoredProcedure;
         if (conDB.State == ConnectionState.Closed)
            conDB.Open();

        SqlDataReader rdr = comGetAllFiles.ExecuteReader();
        DataTable dt = new DataTable();
        dt.Load(rdr);
        foreach (DataRow r in dt.Rows)
        {
            UploadedFilesDetails.Add(new UploadedFiles
            {
                Id = (int)r["Id"],
                UserId =(Guid)r["UserId"],
                FilePath = r["FilePath"].ToString(),
                Date =(DateTime) r["Date"]

            });
        }

    }
    catch(Exception ee)
    {
    }
    finally
    {
        conDB.Close();
    }
    return UploadedFilesDetails;
}

我的 Ajax 函数

<script>
     $(function () {
         LoadUploadFiles();
     });

     function LoadUploadFiles() {

        var url = '<%=ResolveUrl("WebMethods.aspx/GetAllUploadedFiles") %>';
        $.ajax({
            url: url,
            type: "post",
            dataType: "json",
            contentType: "application/json; charset=utf-8",
            success: function (Result) {
                debugger;
                $.each(Result.d, function (key, value) {
                    alert("y");

                    $("#uploaddata").append($("<table><tr></tr></table>").val
                     (value.Id).html(value.FilePath));


                });
            },
            error: function (e, x) {
                alert(x.ResponseText);
            }
        });
    }
 </script>

在我的 Web.Config 文件中

<location path="WebMethods.aspx">
<system.web>
  <authorization>
    <allow users="*"/>
  </authorization>
</system.web>

最佳答案

我找到了答案

只需在 RouteConfig 文件中的行下面注释即可

 //settings.AutoRedirectMode = RedirectMode.Permanent;

关于c# - 从 jquery AJAX 调用 web 方法时身份验证失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23014866/

相关文章:

mysql - 从另一表的列中减去一列的总和

c# - 在进程窗口截屏

jquery - 使用 .text() 仅检索未嵌套在子标签中的文本

c# - TabItem OnSelectionChanged() 设置焦点在内部控件 (WPF)

javascript - AJAX 将 jQuery 发布到 PHP $_POST

jQuery - 滚动时淡出/淡入于 "scrollstop"

javascript - 向 Dropzone.js 中的每个文件添加表单字段

c# - ASP.NET - 网站安装 list 中应包含哪些内容?

javascript - 在 ASPX 中调用 javascript 的 ASCX 结果

c# - Azure Blob 容器线程安全吗?