同源策略以及跨域的演示

關于同源策略和跨域的方法看這里

一蒋困、演示同源策略

首先找到C盤下的Windows/System32/drivers/etc下的hosts文件,用筆記本打開,添加一條ip和域名

  127.0.0.1   localhost   a.com  b.com
1.jpg

將a.com和b.com都指向本機氓涣。然后打開XAMPP,開啟Apache和MySQL陋气,搭建本地服務器劳吠。

2.jpg

在本機的XAMPP下的 htdocs文件夾下寫代碼 CroosOrigin.html

 <!DOCTYPE html>
 <html>
 <head> <meta charset="utf-8"><title></title>  </head>
 <body>
      <button>點我獲取數(shù)據(jù)</button>
      <div class="data"></div>
      <script src='http://apps.bdimg.com/libs/jquery/2.1.4/jquery.js'></script>
      <script type="text/javascript">
       $('button').on('click',function(){
         $.ajax({
        url:'//a.com/ajax.js', //或直接寫ajax.js
        dataType:'text',
        type:'get',
        success:function(data){
            $('.data').text(data);
        },
        error:function(){
            alert('獲取失敗');
        }
    });
})
</script>
</body></html>

ajax.js中的代碼就一行

   this is ajax.js data.

然后瀏覽器打開a.com/ CroosOrigin.html。
點擊按鈕后我們可以看到獲得的數(shù)據(jù)巩趁,同源情況下獲取數(shù)據(jù)成功痒玩。

3.jpg

將$.ajax()函數(shù)中的url更改成

url:'//b.com/ajax.js', 

刷新a.com/ CroosOrigin.html后點擊按鈕,彈出獲取數(shù)據(jù)失敗议慰,查看控制臺:


出錯-控制臺.jpg

受同源策略限制蠢古,a.com和b.com非同源,所以a.com無法請求b.com下的數(shù)據(jù)别凹。

二便瑟、跨域

JOSNP

將a.com/ CroosOrigin.html下的代碼改成如下:

   function addScriptTag(src) { 
         var script = document.createElement('script'); 
         script.setAttribute("type","text/javascript"); 
         script.src = src; 
        document.body.appendChild(script);
    }
    $('button').on('click',function(){
        addScriptTag('http://b.com/ajax.js?callback=foo');
    });

    function foo(data) { 
          $('.data').text(data);
    };

將ajax.js中的代碼改為如下:

    foo(`this is ajax.js data.`)

即可規(guī)避由同源策略帶來的限制。點擊按鈕番川,數(shù)據(jù)能正常顯示。

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末脊框,一起剝皮案震驚了整個濱河市颁督,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌浇雹,老刑警劉巖沉御,帶你破解...
    沈念sama閱讀 223,002評論 6 519
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異昭灵,居然都是意外死亡吠裆,警方通過查閱死者的電腦和手機伐谈,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,357評論 3 400
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來试疙,“玉大人诵棵,你說我怎么就攤上這事∽?酰” “怎么了履澳?”我有些...
    開封第一講書人閱讀 169,787評論 0 365
  • 文/不壞的土叔 我叫張陵,是天一觀的道長怀跛。 經(jīng)常有香客問我距贷,道長,這世上最難降的妖魔是什么吻谋? 我笑而不...
    開封第一講書人閱讀 60,237評論 1 300
  • 正文 為了忘掉前任忠蝗,我火速辦了婚禮,結果婚禮上漓拾,老公的妹妹穿的比我還像新娘阁最。我一直安慰自己,他們只是感情好晦攒,可當我...
    茶點故事閱讀 69,237評論 6 398
  • 文/花漫 我一把揭開白布闽撤。 她就那樣靜靜地躺著,像睡著了一般脯颜。 火紅的嫁衣襯著肌膚如雪哟旗。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,821評論 1 314
  • 那天栋操,我揣著相機與錄音闸餐,去河邊找鬼。 笑死矾芙,一個胖子當著我的面吹牛舍沙,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播剔宪,決...
    沈念sama閱讀 41,236評論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼拂铡,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了葱绒?” 一聲冷哼從身側響起感帅,我...
    開封第一講書人閱讀 40,196評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎地淀,沒想到半個月后失球,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,716評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡帮毁,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,794評論 3 343
  • 正文 我和宋清朗相戀三年实苞,在試婚紗的時候發(fā)現(xiàn)自己被綠了豺撑。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,928評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡黔牵,死狀恐怖聪轿,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情荧止,我是刑警寧澤屹电,帶...
    沈念sama閱讀 36,583評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站跃巡,受9級特大地震影響危号,放射性物質發(fā)生泄漏。R本人自食惡果不足惜素邪,卻給世界環(huán)境...
    茶點故事閱讀 42,264評論 3 336
  • 文/蒙蒙 一外莲、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧兔朦,春花似錦偷线、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,755評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至摆舟,卻和暖如春亥曹,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背恨诱。 一陣腳步聲響...
    開封第一講書人閱讀 33,869評論 1 274
  • 我被黑心中介騙來泰國打工媳瞪, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人照宝。 一個月前我還...
    沈念sama閱讀 49,378評論 3 379
  • 正文 我出身青樓蛇受,卻偏偏與公主長得像,于是被迫代替她去往敵國和親厕鹃。 傳聞我的和親對象是個殘疾皇子兢仰,可洞房花燭夜當晚...
    茶點故事閱讀 45,937評論 2 361

推薦閱讀更多精彩內(nèi)容