我想要更熟悉AJAX和Web服務,所以我用VS2008創建了最簡單的web服務,hello world,使用了webmethod GetPaper,並試圖獲得返回值「hello world」。爲什麼我的.NET webmethod返回一個完整的HTML文檔而不僅僅是返回值?
<%@ WebService Language="C#" Class="HelloWorld" %>
using System;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
[WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.Web.Script.Services.ScriptService] public class
HelloWorld : System.Web.Services.WebService {
[WebMethod]
public string GetPaper() {
return "Hello World";
}
}
http://www.linkedpapers.com/helloworld.asmx
然而,當我消耗此WebService使用Javascript,我得到一個完整的HTML頁面結果,而不僅僅是價值!
xmlRequest.onreadystatechange = ApplyUpdate;
xmlRequest.open("GET", "http://www.linkedpapers.com/helloworld.asmx?op=GetPaper", true);
xmlRequest.send();
這可能很簡單,但我似乎無法弄清楚!非常感謝幫助。
問候,
赫拉斯
編輯:還是我用錯了網址?如果是這樣,我應該使用什麼?
是的!這個組合做到了! 我試過「helloworld.asmx/GetPaper」,但在web.config中沒有「add name = HttpGet」的情況下不起作用。 謝謝! – Heras 2010-02-01 14:23:41