2009-08-05 39 views
1

我在ASP.NET应用程序中通过Jquery调用页面方法来进行AJAX调用。在ASP.NET webservice和页面方法中调用jquery ajax

$.ajax({ 
     type: "POST", 
     url: "APage.aspx/GetDropDowns", 
     data: "{'AId':'1'}", 
     contentType: "application/json; charset=utf-8", 
     dataType: "json", 
     success: function(msg) { 
     alert(msg.d); 
     }, 
     error: function() { 
     alert('Error '); 
     } 

    [System.Web.Services.WebMethod] 
public static string GetDropDowns(string Id) 
{ 
    return "Id was: " + Id; 
} 

我记得使用ASP.NET AJAX时,鼓励使用webservices而不是页面方法。然而,如果我正在执行JSON并且发布信息,那么 A)上述任何安全缺陷和B)使用web服务而不是页面方法的任何理由

回答

0

A.这里已经有一个很好的回复(Security advice for jquery ajax data post?

B.页面回传方法(或通过Ajax UpdatePanel)在HTTP Post上有更大的开销(特别是视图状态信息,它携带更多不需要的数据)。普通的回发更直接的实现。

+3

我不认为问题是页面回发vs updatepanel,而是他问的是关于Web服务与页面方法。 – 2009-12-22 18:26:37

1

Web方法本质上是一种实现Web服务的简单方法,无需为其创建单独的文件等。您发布的代码没有任何问题。 @约翰对@ o.k.w引用的问题38421的回答。是对安全性需要思考的一个很好的总结。