跨域資源共享

1.為什么提出跨域資源共享(CORS)?
因為XHR實現ajax的安全限制是:XHR 對象只能訪問與包含它的頁面位于同一個域中的資源
2.如何實現跨域?(跨瀏覽器)
// 跨瀏覽器創建并返回CORS對象
// param method : 請求的方式, get or post
// param url : 跨域請求的url
// return xhr : 返回的跨域資源對象
function createCORSRequest(method, url){
var xhr = new XMLHttpRequest();
if ("withCredentials" in xhr){
xhr.open(method, url, true); // CORS都是通過異步的請求
} else if (typeof XDomainRequest != "undefined"){ // IE
vxhr = new XDomainRequest();
xhr.open(method, url);
} else {
xhr = null;
}
return xhr;
}
var request = createCORSRequest("get", "http://localhost/aaa/dome2.php");
if (request){
// 用于替代onreadystatechange 檢測成功,表示接受數據完畢
request.onload = function(){
// 對響應的信息進行處理
alert(request.responseText); // 取得響應的內容
};
// 用于替代onreadystatechange 檢測錯誤。
request.onerror = function(){
// 對響應的信息進行處理
};
// 用于停止正在進行的請求。
request.onabort = function(){
// 對響應的信息進行處理
alert(request.responseText);
};
// 跨域發送請求
request.send();
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容