最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

js實現(xiàn)跨域訪問的三種方法

 更新時間:2015年12月09日 09:53:20   作者:lwaif  
這篇文章主要介紹了js實現(xiàn)跨域訪問的三種方法,包括基于iframe實現(xiàn)跨域、基于script標簽實現(xiàn)跨域以及后臺代理方式 ,感興趣的小伙伴們可以參考一下

javascript跨域訪問是web開發(fā)者經常遇到的問題,什么是跨域,一個域上加載的腳本獲取或操作另一個域上的文檔屬性,下面將列出三種實現(xiàn)javascript跨域方法:
1.基于iframe實現(xiàn)跨域
基于iframe實現(xiàn)的跨域要求兩個域具有aa.xx.com,bb.xx.com這種特點,也就是兩個頁面必須屬于一個基礎域(例如都是xxx.com,或是xxx.com.cn),使用同一協(xié)議(例如都是 http)和同一端口(例如都是80),這樣在兩個頁面中同時添加document.domain,就可以實現(xiàn)父頁面調用子頁面的函數(shù),代碼如下:
頁面一: 

<html> 
<head> 
 <script> 
  document.domain = "xx.com"; 
  function aa(){ 
   alert("p"); 
  } 
 </script> 
</head> 
<body> 
  <iframe src="http://localhost:8080/CmsUI/2.html" id="i"> 
   
  </iframe> 
  <script> 
 document.getElementById('i').onload = function(){ 
   var d = document.getElementById('i').contentWindow; 
   d.a(); 
    
 }; 
  </script> 
 </body> 
</html> 

頁面二: 

<html> 
 <head> 
 <script> 
  document.domain = "xx.com"; 
  function a(){ 
  alert("c"); 
   } 
 </script> 
 </head> 
 <body> 
 </body> 
</html> 

這時候父頁面就可以調用子頁面的a函數(shù),實現(xiàn)js跨域訪問
2.基于script標簽實現(xiàn)跨域
script標簽本身就可以訪問其它域的資源,不受瀏覽器同源策略的限制,可以通過在頁面動態(tài)創(chuàng)建script標簽,代碼如下:

var script = document.createElement('script'); 
script.src = "http://aa.xx.com/js/*.js"; 
document.body.appendChild(script); 

這樣通過動態(tài)創(chuàng)建script標簽就可以加載其它域的js文件,然后通過本頁面就可以調用加載后js文件的函數(shù),這樣做的缺陷就是不能加載其它域的文檔,只能是js文件,jsonp便是通過這種方式實現(xiàn)的,jsonp通過向其它域傳入一個callback參數(shù),通過其他域的后臺將callback參數(shù)值和json串包裝成javascript函數(shù)返回,因為是通過script標簽發(fā)出的請求,瀏覽器會將返回來的字符串按照javascript進行解析執(zhí)行,實現(xiàn)了域與域之間的數(shù)據(jù)傳輸。
jquery中對jsonp的支持也是基于此方案。
3.后臺代理方式
這種方式可以解決所有跨域問題,也就是將后臺作為代理,每次對其它域的請求轉交給本域的后臺,本域的后臺通過模擬http請求去訪問其它域,再將返回的結果返回給前臺,這樣做的好處是,無論訪問的是文檔,還是js文件都可以實現(xiàn)跨域。

以上js實現(xiàn)跨域訪問的三種方法分先給大家,大家仔細研究學習,一定會有所收獲

相關文章

  • js實現(xiàn)Form欄顯示全格式時間時鐘效果代碼

    js實現(xiàn)Form欄顯示全格式時間時鐘效果代碼

    這篇文章主要介紹了js實現(xiàn)Form欄顯示全格式時間時鐘效果代碼,可讀取當前的完整時間并實時顯示,非常具有實用價值,需要的朋友可以參考下
    2015-08-08
  • 純HTML5制作圍住神經貓游戲-附源碼下載

    純HTML5制作圍住神經貓游戲-附源碼下載

    圍住神經貓游戲是一款基于html5、jquery、typescript等技術開發(fā)的游戲,非常好玩,感興趣的朋友快來圍觀吧,體驗一把,下面給大家分享使用html5如何制作圍住神經貓游戲-附源碼下載,有需要的朋友可以參考下
    2015-08-08
  • JavaScript必看的10道面試題總結(推薦)

    JavaScript必看的10道面試題總結(推薦)

    JavaScript 已經成為全棧開發(fā)技能的基石,在全棧開發(fā)面試中都會不可避免地涉及到與 JavaScript 有關的問題。這篇文章主要給大家介紹了關于JavaScript必看的10道面試題,需要的朋友可以參考下
    2021-05-05
  • 一篇文章教你JS函數(shù)繼承

    一篇文章教你JS函數(shù)繼承

    這篇文章主要介紹了js繼承方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-09-09
  • JS代碼簡潔方式之函數(shù)方法詳解

    JS代碼簡潔方式之函數(shù)方法詳解

    這篇文章主要介紹了JS代碼簡潔方式之函數(shù)方法詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-07-07
  • Web?Components入門教程示例詳解

    Web?Components入門教程示例詳解

    這篇文章主要為大家介紹了Web?Components入門教程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-05-05
  • jQuery實現(xiàn)頁面頂部下拉廣告

    jQuery實現(xiàn)頁面頂部下拉廣告

    本文主要分享了jQuery實現(xiàn)頁面頂部下拉廣告的具體代碼。具有一定的參考價值,下面跟著小編一起來看下吧
    2016-12-12
  • JavaScript插件化開發(fā)教程(五)

    JavaScript插件化開發(fā)教程(五)

    這篇文章是JavaScript插件化開發(fā)系列教程的第五篇,還是著重于實戰(zhàn),通過具體的實例來學習jQuery的方式如何開發(fā)插件,有相同需求的小伙伴來參考下吧。
    2015-02-02
  • js學習總結之DOM2兼容處理this問題的解決方法

    js學習總結之DOM2兼容處理this問題的解決方法

    這篇文章主要為大家詳細介紹了js學習總結之DOM2兼容處理this問題的解決方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • D3.js入門之D3?DataJoin的使用

    D3.js入門之D3?DataJoin的使用

    DataJoin(數(shù)據(jù)連接)是D3中很重要的一個概念。D3是基于數(shù)據(jù)操作DOM的js庫,DataJoin使我們能夠根據(jù)現(xiàn)有?HTML?文檔中的數(shù)據(jù)集注入、修改和刪除元素。本文主要和大家詳細聊聊DataJoin的使用,感興趣的可以學習一下
    2022-11-11

最新評論

利津县| 万荣县| 宾川县| 乐至县| 建平县| 章丘市| 德钦县| 通渭县| 峨山| 汪清县| 枞阳县| 新蔡县| 灵山县| 马山县| 山丹县| 黄龙县| 台湾省| 麟游县| 永登县| 贵州省| 大方县| 尼木县| 和田县| 乐业县| 江西省| 抚顺县| 乐都县| 白河县| 宁都县| 科技| 望城县| 湖州市| 临夏市| 福建省| 正宁县| 潜山县| 景泰县| 稻城县| 台湾省| 阳东县| 黔西|