一、概述
位於www.a.com域中的SWF文件要訪問www.163.com的文件時,SWF首先會檢查163服務器目錄下是否有crossdomain.xml文件,如果沒有,則訪問不成功;若crossdomain.xml文件存在,且里邊設置了允許www.a.com域訪問,那么通信正常。所以要使Flash可以跨域傳輸數據,其關鍵就是crossdomain.xml。
二、crossdomain.xml文件格式
crossdomain.xml的格式非常簡單,其根節點為<cross-domain-policy> ,其下包含一個或多個<allow-access-from>節點,<allow-access-from>有一個屬性domain,其值為允許訪問的域,可以是確切的 IP 地址、一個確切的域或一個通配符域(任何域)。下邊是兩個例子:
<?xml version="1.0"?> <cross-domain-policy> <allow-access-from domain="www.friendOfFoo.com" /> <allow-access-from domain="*.foo.com" /> <allow-access-from domain="105.216.0.40" /> </cross-domain-policy>
<?xml version="1.0"?> <cross-domain-policy> <allow-access-from domain="*" /> </cross-domain-policy>
第二個例子允許任何域的訪問。對於crossdomain.xml文件存放位置,建議將其存放於站點根目錄中!