C# 未从仅javascript页面调用.NET Web方法

C# 未从仅javascript页面调用.NET Web方法,c#,jquery,.net,postman,webmethod,C#,Jquery,.net,Postman,Webmethod,我在.aspx页面的codebhind中有一个web方法,但是当我尝试访问它时,它不会触发webmethod,只会触发页面。返回状态为200,正在调用该页,但忽略该方法。无论我使用name.aspx/GetData还是name.aspx/Anything,结果都是200,但方法没有被激发。我用jqueryajax和Postman测试了这两者。获取并发布尝试。 web.config或任何其他内容中是否有需要更改的内容 $.ajax({ url: '/

我在.aspx页面的codebhind中有一个web方法,但是当我尝试访问它时,它不会触发webmethod,只会触发页面。返回状态为200,正在调用该页,但忽略该方法。无论我使用name.aspx/GetData还是name.aspx/Anything,结果都是200,但方法没有被激发。我用jqueryajax和Postman测试了这两者。获取并发布尝试。 web.config或任何其他内容中是否有需要更改的内容

$.ajax({
                        url: '/adm/clientAccess.aspx/MyMethodInexistent',
                        data: {},
                        type: 'POST',
                        contentType: 'application/x-www-form-urlencoded',
                        dataType: 'html',
                        success: function (data) {
                           //I GET HERE even if the method doesn't exist, and if it exists, it doesn't return data.
                           alert(1);
                        },
                        error: function (response) {
                            alert(response.responseText);
                        }
                    }
                    );


需要使用ScriptManager元素启用页面方法:

<asp:ScriptManager ID="scm" runat="server" EnablePageMethods="true"/>

需要使用ScriptManager元素启用页面方法:

<asp:ScriptManager ID="scm" runat="server" EnablePageMethods="true"/>

您是否可以尝试使用下面的代码,确保下面的
url
中的方法路径正确。如果正在使用页面方法,还可以在scriptmanager级别启用页面方法

   $.ajax({
    url: '/adm/clientAccess.aspx/MyMethod',
    data: {},
    type: 'POST',
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    async: "true",
    success: function (data) {
       console.log(data);
       //alert(1);
    },
    error: function (response) {
        alert(response.responseText);
    }
}
);

您能否尝试使用下面的代码,请确保下面
url
中的方法路径正确。如果正在使用页面方法,还可以在scriptmanager级别启用页面方法

   $.ajax({
    url: '/adm/clientAccess.aspx/MyMethod',
    data: {},
    type: 'POST',
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    async: "true",
    success: function (data) {
       console.log(data);
       //alert(1);
    },
    error: function (response) {
        alert(response.responseText);
    }
}
);

如果你不发布任何代码,你比我们更了解这个问题。我们怎么可能帮助你呢?请阅读关于如何提问的指导原则:对不起,我现在添加了。您使用的是哪个版本的.NET?它应该是
url:'/adm/clientAccess.aspx/MyMethod',
来调用该方法。尝试在方法中添加断点,以查看是否能够访问它。Hi。它是3.5。我无法调试,因为我使用的是Visual Studio代码,我正在远程服务器上测试,页面未编译。如果您不发布任何代码,您对问题的了解将比我们更多。我们怎么可能帮助你呢?请阅读关于如何提问的指导原则:对不起,我现在添加了。您使用的是哪个版本的.NET?它应该是
url:'/adm/clientAccess.aspx/MyMethod',
来调用该方法。尝试在方法中添加断点,以查看是否能够访问它。Hi。它是3.5。我无法调试,因为我正在使用Visual Studio代码,我正在远程服务器上测试,并且页面未编译。您好。我尝试过这样做,用EnablePageMethods添加scriptManager,但是结果是一样的,它返回整个页面,它不会触发该方法,而且我仍然可以调用现有的方法。哇,好消息,它与contentType一起工作:“application/json;charset=utf-8”。这是一切的结合。谢谢!你好我尝试过这样做,用EnablePageMethods添加scriptManager,但是结果是一样的,它返回整个页面,它不会触发该方法,而且我仍然可以调用现有的方法。哇,好消息,它与contentType一起工作:“application/json;charset=utf-8”。这是一切的结合。谢谢!