2012-07-03 73 views
0

您好,我正在嘗試編寫一種方法,將信息發佈到另一個域並獲得簡單的響應。我在Chrome和Firefox中使用此功能,但所有版本的IE都無法正常工作。這裏是我的代碼:

function getCode(email, password, firstname, lastname){ 
    $.support.cors = true; 
    $.ajax({ 
     type: "POST", 
     cache: false, 
     url: "http://localhost:61660/Account/TestMemberStatus", 
     data: {email: email, password: password, firstname: firstname, lastname: lastname }, 
     dataType: "json", 
     success: function(result) { 
      ContinuePart2(result, email, firstname, lastname); 
     }, 
     error: function(result){ 
      ContinuePart2("error"); 
     } 
    }); 
} 

我使用jQuery 1.7.2,我在IE收到錯誤是「錯誤:訪問被拒絕\ r \ n」。

後端是一個.NET MVC3網站與一個公開的方法,返回一個JSON字符串。我已經添加了follwing標題:

filterContext.RequestContext.HttpContext.Response.AddHeader("Access-Control-Allow-Origin", "*"); 
filterContext.RequestContext.HttpContext.Response.AddHeader("Access-Control-Allow-Credentials", "true"); 

UPDATE:這是一個跨域調用

任何幫助將不勝感激!

+0

我假設在嘗試發出AJAX請求時發生錯誤,而不是在處理響應時拋出錯誤?如果是這樣,請求頁面的網址是什麼?如果不是,'ContinuePart2()'做什麼? –

+0

ContinuePart2只是用數據更新了一些元素。錯誤處理程序每​​次都會觸發。我也應該提到這是跨域,我會用這個更新這個問題。 –

回答

1

Internet Explorer僅部分支持CORS。從IE10開始,您可能希望獲得XHR的全面CORS支持。例如專有的IE8 supports CORS with the XDomainRequest對象。

+0

所以基本上,這是不可能的在IE7 +支持? –

+0

這是可能的。在IE8中,您可以使用本地'XDomainRequest'對象發送您的AJAX請求。就IE7而言,我真的不知道。這已經很多年了,我不再擔心這個瀏覽器。 –

相關問題