2010-07-27 51 views
1

我想從ajax jquery調用Web服務。它成功地進入了成功的方法,但不幸的是403錯誤被觸發,因此不允許我訪問數據。Ajax調用Web服務 - 成功的方法,但禁止數據訪問

這是我的代碼:

try { 
    $.ajax({ 
    type: "POST", 
    url: urlAddress, 
    data: dataa, 
    contentType: "text/xml; charset=utf-8", 

    success: function(Msg) { 
// $("#Result").text(msg.d); 
    alert("ok"); 
    alert("hi "+Msg.responseText + " How are you?"); 
    }, 

    error: function(request, status, error) { 
     alert("Error "+request.statusText.toString()); 
     alert("ERROR"); 
    } 
}); 
    } 
    catch (e) 
    {} 

Msg.ResponseText回來 「未定義」

從活HTTP標頭,我得到以下幾點:

接受:text/html的,應用/xhtml+xml,application/xml;q=0.9,/; q = 0.8 Accept-Language:zh-cn,en; q = 0.5 Accept-Encoding:gzip,deflate 接收字符集: ISO-8859-1,UTF-8,Q = 0.7,*; Q = 0.7 保持活動:115連接:保持活躍 來源:空 訪問控制請求-方法:POST

HTTP/1.1 403禁止 的Content-Length:1758 的Content-Type:text/html的 服務器:Microsoft-IIS/6.0 X供電,通過:ASP.NET 日期:星期二,2010年7月27日10 :59:04 GMT

回答

0

urlAddress這樣的氣味不在您運行該腳本的同一個域中。

這將違反same origin policy,因此,失敗。

如果我在這裏有錯誤的假設,你的web服務可能需要登錄(用戶名+密碼),你可能會漏過.ajax()

+0

我嘗試使用Soap訪問Web服務,並沒有問題......所以我不確定 – Lilz 2010-07-27 10:48:52