js跨域資源共享 基礎(chǔ)篇
本文詳細(xì)介紹了javascript跨域資源共享,供大家參考,具體內(nèi)容如下
1.為什么提出跨域資源共享(CORS)?
因?yàn)閄HR實(shí)現(xiàn)ajax的安全限制是:XHR 對(duì)象只能訪問(wèn)與包含它的頁(yè)面位于同一個(gè)域中的資源
2.如何實(shí)現(xiàn)跨域?(跨瀏覽器)
// 跨瀏覽器創(chuàng)建并返回CORS對(duì)象 // param method : 請(qǐng)求的方式, get or post // param url : 跨域請(qǐng)求的url // return xhr : 返回的跨域資源對(duì)象 function createCORSRequest(method, url){ var xhr = new XMLHttpRequest(); if ("withCredentials" in xhr){ xhr.open(method, url, true); // CORS都是通過(guò)異步的請(qǐng)求 } 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 檢測(cè)成功,表示接受數(shù)據(jù)完畢 request.onload = function(){ // 對(duì)響應(yīng)的信息進(jìn)行處理 alert(request.responseText); // 取得響應(yīng)的內(nèi)容 }; // 用于替代onreadystatechange 檢測(cè)錯(cuò)誤。 request.onerror = function(){ // 對(duì)響應(yīng)的信息進(jìn)行處理 }; // 用于停止正在進(jìn)行的請(qǐng)求。 request.onabort = function(){ // 對(duì)響應(yīng)的信息進(jìn)行處理 alert(request.responseText); }; // 跨域發(fā)送請(qǐng)求 request.send(); }
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助。
相關(guān)文章
Chrome中模態(tài)對(duì)話框showModalDialog返回值問(wèn)題的解決方法
chrome中彈出模態(tài)對(duì)話框,通過(guò)window.returnValue賦返回值關(guān)閉后,有的情況下無(wú)法取得返回值。2010-05-05javaScript+turn.js實(shí)現(xiàn)圖書(shū)翻頁(yè)效果實(shí)例代碼
這篇文章主要介紹了javaScript+turn.js實(shí)現(xiàn)圖書(shū)翻頁(yè)效果實(shí)例代碼,重點(diǎn)講解turn.js 如何使用的。需要的朋友可以參考下2017-02-02使用純javascript實(shí)現(xiàn)經(jīng)典掃雷游戲
本文給大家分享的是個(gè)人剛開(kāi)始學(xué)習(xí)javascript的時(shí)候?qū)懙姆聎indows經(jīng)典的掃雷游戲的代碼,當(dāng)時(shí)只是寫(xiě)了下來(lái),沒(méi)加注釋,這里補(bǔ)上,有需要的小伙伴可以參考下。2015-04-04基于JS實(shí)現(xiàn)數(shù)字+字母+中文的混合排序方法
這篇文章主要介紹了基于JS實(shí)現(xiàn)數(shù)字+字母+中文的混合排序方法的相關(guān)資料,非常不錯(cuò)具有參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06微信小程序在text文本實(shí)現(xiàn)多種字體樣式
這篇文章主要介紹了微信小程序在text文本實(shí)現(xiàn)多種字體樣式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11