讓swf跨域傳輸資料

2021-08-30 04:47:04 字數 1280 閱讀 3884

一、概述

位於www.mzwu.com域中的swf檔案要訪問www.163.com的檔案時,swf首先會檢查163伺服器目錄下是否有crossdomain.xml檔案,如果沒有,則訪問不成功;若crossdomain.xml檔案存在,且裡邊設定了允許www.mzwu.com域訪問,那麼通訊正常。所以要使flash可以跨域傳輸資料,其關鍵就是crossdomain.xml。

二、crossdomain.xml檔案格式

crossdomain.xml的格式非常簡單,其根節點為,其下包含乙個或多個節點,有乙個屬性domain,其值為允許訪問的域,可以是確切的 ip 位址、乙個確切的域或乙個萬用字元域(任何域)。下邊是兩個例子:

程式**

<?xml version="1.0"?>

程式**

<?xml version="1.0"?>

第二個例子允許任何域的訪問。對於crossdomain.xml檔案存放位置,建議將其存放於站點根目錄中!

-->next stone :

crossdomain.xml是放在伺服器端的檔案,什麼叫做放在伺服器端,就是放在你要獲取的檔案的所在的那台機器的那個網域名稱下面。

-->next stone :

關於跨域策略檔案crossdomain.xml檔案 

?這是很標準的做法,我就讓我自己的域以及我的子域來獲取資料。

**的:

紅色的一行是**的cdn所在的域,所謂內容分發網路。

綠色的一行是**的廣告商了,好耶廣告網路,只是不清楚是不是仍然再賣**的廣告?

多看幾個大**的crossdomain.xml,也可以知道可能是什麼網路廣告商給它們在打廣告。

比如彭博:

紅色的就太不專業了,把內部ip都給暴露了。。。。。。

綠色的是彭博的廣告商:pointroll

路透的:

廣告給了doubleclick來做(綠色)

2mdn.net看不懂是幹嘛的,大概是個cdn吧。

濫情的facebook:

<?xml version=」1.0″?>

這麼多!有子域,有cdn,有thefacebook(facebook的舊網域名稱吧?)

還是google的專業:

<?xml version=」1.0″?>

藍色行的意思是,要符合要求的檔案你才能取,不管你是哪來的flash資料請求。符合要求的文件必須滿足:content-type: text/x-cross-domain-policy

引用: 

swf跨域互相載入

理論知識 條件 a.swf b.swf,a伺服器,b伺服器,要求 a.swf放在a伺服器,b.swf放在b伺服器,a.swf呼叫b.swf 關鍵因素 security.allowdomain 類物件,那麼至少在3.0中是這樣的,2.0應該前面還有system類,具體可以檢視as2.0,及as3.0類...

跨時鐘域傳輸總結

多 bit 傳輸 雖然以前也看過一些關於跨時鐘域傳輸 下稱cdc 的文章,但那時由於認識所限,對於不同型別的cdc更像是照本宣科,沒有進行深入的思考。現在看的資料多了,再回過頭來看這些關於cdc的文章,又有新的收穫。因此決定寫一篇部落格總結一下我目前對於cdc的理解。強烈推薦大家先看ic learn...

繞開AS3安全沙箱,跨域載入SWF

as3的安全沙箱的確是讓人很無奈,本篇文章僅用於解決乙個特定的問題,即a伺服器上的swf檔案通過http訪問b伺服器上的檔案,此時即使b伺服器上設定了allowdomain.xml,也無濟於事,b伺服器上被載入的檔案除必須的allowdomain.xml外,還必須使用security.allowdo...