需求是兼容到 IE8。jquery
$.ajax 老是請求失敗,直接跳轉到 error 函數中,報錯:拒絕訪問。ajax
網上的一些解決方法都試過了仍是沒有用,好比再請求以前設置 jQuery.support.cors = true,並調用 jquery.xdomainrequest.min.js 。更改 IE 設置,將經過域訪問數據設置爲容許。這些方法都試過了,都沒有用。cors
最後是在 $.ajax 運行以前添加以下代碼成功的 。dom
jQuery.support.cors = true; jQuery.ajaxSetup({ xhr: function() { if(window.ActiveXObject){ return new window.ActiveXObject("Microsoft.XMLHTTP"); }else{ return new window.XMLHttpRequest(); } } });
以上代碼,若是隻設置了 ajaxSetup ,而沒有設置 cors,就會報錯 No Transport 。函數
因此兩個都要設置,後臺還須要設置全部域名均可訪問,'Access-Control-Allow-Origin': '*'spa