我需要在「xx.com」服務器上託管我的全閃存SWF站點。但所有圖形和聲音必須從「yy.com」服務器上加載。需要在服務器上安裝SWF,但需要在另一個服務器上安裝數據
在我的AS3代碼,所有數據通過絕對地址加載,如:
http://yy.com/file1.jpg
http://yy.com/file2.jpg
如果我在本地運行的SWF,無論是從Flash創作工具,或本地.html文件中,或者通過雙擊swf,它工作正常。所有數據均從「yy.com」下載,並且該網站正確顯示。
如果我上傳「xx.com」上的swf並將其加載到那裏,它將不起作用。
我已經創建瞭如下的crossdomain.xml文件
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<site-control permitted-cross-domain-policies="all"/>
<allow-access-from domain="*" />
</cross-domain-policy>
,並在
http://yy.com/crossdomain.xml
結果上傳是很奇怪:它似乎向開始加載1-2圖片關閉「yy.com」,但隨後停止。此行爲發生在有或沒有crossdomain.xml文件。
我試圖以某種方式達到目的嗎?我的問題是,xx.com的空間非常有限,所以我可以上傳swf和/或html,而不是實際的數據(這是很多MB)。
嘗試安裝Fiddler Web Debugger,如果你在Windows或Charles上,如果你在Mac上。看看是否訪問了跨域文件。然後檢查資產是否被訪問。 – 2012-03-29 20:57:48
你的swf是通過https服務的嗎?如果是這樣,您需要在cross-domain.xml中使用'secure =「false」' – 2012-03-29 21:11:53
另外,請檢查調試器是否提供任何錯誤 - 通常,如果它是跨域問題,您應該得到調試控制檯中拋出的安全沙箱錯誤。 – 2012-03-29 21:12:42