2013-05-15 14 views
1

我不能讓工作在.NET Web服務我在.NET在iPad

[WebMethod] 
    [ScriptMethod(ResponseFormat = ResponseFormat.Json)] 
    public string EnableRetailer(int ID) 
    { 
     var result = Business.Business.EnableRetailer(ID); 
     return result.ToString(); 
    } 

一個簡單的互聯網服務和我試圖張貼到使用jQuery使用此代碼

  $.ajax(
       { 
        type: "POST", 
        url: "/api/BoothWebService.asmx/EnableRetailer", 
        data: { ID: '2965' }, 
        dataType: "json", 
        async: true, 
        success: function (data) { 
         alert('success'); 
        }, 
        error: function (jqXHR, textStatus, errorThrown) { 
         alert(errorThrown); 
        } 
       }); 
     }); 
這種方法

它適用於我電腦上的每個瀏覽器,但我在iPad上遇到「內部錯誤」。

有什麼建議嗎?

+0

是與瀏覽器在同一臺機器上運行的服務嗎? – Maciej

+0

是的,該服務與瀏覽器在同一臺機器上運行。 – Smeegs

+0

似乎你可能試圖從你的ipad打本地url。你能說出你的ajax調用中url的完整路徑是什麼嗎?即:與http前綴等 – Maciej

回答

0

由於某些原因,傳遞一個對象作爲數據僅在與託管在同一臺計算機上時才起作用。我必須將ajax調用更改爲以下才能使用。

 $.ajax(
      { 
       type: "POST", 
       url: "../api/BoothWebService.asmx/EnableRetailer", 
       contentType: 'application/json; charset=utf-8', 
       dataType: 'json', 
       data: "{ 'ID': " + ID + " }", 
       async: false, 
      });