[英]JQuery server side method call internal
我经常借助jquery调用我的aspx服务器端方法。
$.ajax({
type: "POST",
url: "login.aspx/Authenticate",
data: JSON.stringify(DTO),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
sHtml = data.d;
if (sHtml != "") {
alert(sHtml);
location.href = sHtml;
}
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert(textStatus);
}
});
但有趣的是,我不知道jquery是如何从外部调用我的静态方法的。 我看到,当我调用服务器端方法时,page_load不会触发,但是在使用updatepanel部分回发page_load的情况下,请先执行。
所以我想知道jquery的内部逻辑,它如何直接调用服务器端方法........寻找良好的解释。 谢谢
所以我想知道jquery的内部逻辑,它如何直接调用服务器端方法
不可以
jQuery可能导致浏览器向URI发出HTTP请求。
服务器可以响应于请求URI而运行代码,以便确定要返回的内容和标头。
在jquery情况下发生的事情是该方法被标记为webmethod,这意味着它可以作为httprequest的终结点,就好像它是一个web服务一样,当您这样做时,jquery对该方法进行httprequest就像他正在调用网络服务。
此URL将使您深入了解进行任何ajax调用时发生的情况http://msdn.microsoft.com/zh-cn/magazine/cc163499.aspx
您的服务器端方法标记有[WebMethod]属性,对吗? 此属性将方法公开为xml Web服务。
http://msdn.microsoft.com/zh-CN/library/byxd99hx(v=vs.71).aspx
由于此自动生成的“ webservice”与页面无关,因此不会调用page_load。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.