最近遇到一個跨網域的 Flash 文件存取網站資料問題。透過 Google 找了一些資料,發現基本上 Flash 文件是不允許你跨網域(甚至是次網域)存取網站資料的。如果你希望 Flash 能夠跨網域存取網站資料,唯一的方式是在 Flash 文件存放的目錄中,加上一個原則檔 crossdomain.xml,裡面可以描述對這個 Flash 的存取原則:
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-access-from domain="*.abc.com" />
<allow-access-from domain="*.def.com" />
</cross-domain-policy>
這表示 *.abc.com 與 *.def.com 都可以透過這個 Flash 文件來存取網站資料。
更詳細的資料請參考:允許跨網域資料載入。