2013-06-12 60 views
0

我有一個C#中的WebService,我想從另一個應用程序訪問這個Web服務。例如,有一個web服務運行在本地主機,我也有一個網站在本地主機上運行,​​這兩個項目都在不同的地方。問題是:我如何使用ajax從本地網站調用這個web服務。從另一個應用程序訪問Webservice

是我的代碼是這樣的: WebService的

[System.Web.Script.Services.ScriptService] 
public class Service1 : System.Web.Services.WebService 
{ 
    [WebMethod] 
    public String HelloWorld() 
    { 
     return "Hello World"; 
    } 
} 

和客戶端

$.ajax({ 
    type: "POST", 
    url: "localhost:52137/Service1.asmx?op=HelloWorld", 
    contentType: 'application/json; charset=utf-8', 
    dataType: 'json', 
    data: '', 
    success: function (data, status) { 
     alert(data.d); 
    }, 
    error: function(data, status){ 
     alert(status); 
    } 
}); 

回答

0

嘗試改變網址是:

網址:「HTTP://本地主機:52137 /Service1.asmx/HelloWorld「

和BTW ..如果網站運行在不同的服務端口..你仍然有xdomain問題。

CORS ASMX

0

由於這兩個項目都在不同的地方,這將是CORS請求。

您需要在this文章中建議的服務應用程序中啓用跨域請求。

您可以使用允許跨域請求的$.getJSON

正如您使用C#,您可以創建HTTP Handler,如this文章中所示。

相關問題