2013-07-01 53 views
0

我用ajax與它通信時,工作正常使用POST web服務:轉換的jQuery + C#web服務使用GET而不是POST

客戶端:

... 
$.ajax({ 
    url: 'webservice.asmx/GetCount', 
    type: 'POST', 
    data: '{"theDate": "' + strDate + '"}', 
... 

服務器端:

... 
[WebMethod()] 
public double GetCount(string theDate) 
{ 
... 

我怎麼會去將這些使他們利用GET而不是POST

我試過將客戶端部分更改爲type: 'GET',但是出現錯誤,因此我假設我需要對服務器端部分進行一些更改?

+0

'//對一個將此Web服務從腳本中調用,使用ASP.NET AJAX,取消註釋以下行。# '// [System.Web.Script.Services.ScriptService]' –

回答

1

你需要添加[ScriptMethod(UseHttpGet=true)]到您的webmethod

客戶端:

​​

服務器端:

... 
[WebMethod()] 
[ScriptMethod(UseHttpGet=true)] 
public double GetCount(string theDate) 
{ 
... 
+0

請參閱我在嘗試此操作時遇到的錯誤。我在上面的問題中粘貼了錯誤。 – oshirowanen

1

嘗試將以下屬性添加到相關方法中。我相信這應該工作:

[ScriptMethod(UseHttpGet=true)]