Flex4 Error #2032,及 Error #2032 Stream Error的解決方式

    flexError #2032Stream Errorrsl.在flex程序初始化默認加載滾動條還沒出來時就報了Error 2032 IO流錯誤,但只限於三維演示廳裏的用戶機上運行時纔出現,別的機器都正常,後來將flash builder中的編譯參數改爲merged into swf,就是將flex框架嵌入到swf裏面,而不是使用shared library共享庫,問題解決。

    過了幾個月又碰到這個問題,只是在筆記本上會報Error2032,在其他電腦上都沒問題,用Fiddler分析http請求發現,在使用RSL的flex程序初始化時會去下載xxx.swz文件,而IIS服務器返回的是404找不到此文件,而服務器上分明有這個文件,懷疑是IIS沒有swz文件的MIME類型,在IIS上增加swz的MIME類型爲application/x-swz後,問題解決!

    爲什麼只在某些電腦上發生這個錯誤?因爲RSL的機制問題,當flash player第一次訪問使用RSL的flex程序時,會下載所需的swz文件,然後保存在flash player自己的緩存目錄裏(win7下爲X:\Users\用戶名\AppData\Roaming\Adobe\Flash Player\AssetCache\隨機目錄名),清除瀏覽器的緩存並不會影響flash player的緩存。再次訪問時會先檢查並使用緩存中的swz文件,所以在已有swz緩存的電腦上不會出現這個問題。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章