2009-12-07 90 views
1

我在Flex 3上使用ExternalInterface。我們實際上使用flex來壓縮大量的DOM數據,所以這是專門用於LARGE數據的。Flex 3中的ExternalInterface是否具有數據大小限制?

爲了進一步調查,如果有限制,這是普遍的嗎? (IE。Silverlight)

首先,讓我聲明這是由一個由缺乏經驗的軟件工程師製作的應用程序完成的。這是一個我們需要通過壓縮數據來購買時間的應用程序,以便我們可以構建一個長期解決方案。不幸的是,我們沒有其他選擇。

背景:這是一個實際上是網絡電子表格的應用程序。我們的長期解決方案是製作Office業務應用程序。

+0

我不知道有任何上限 - 只是出於好奇:是什麼讓你選擇flex壓縮,而不是在js本身做? – Amarghosh 2009-12-08 05:49:37

回答

1

不,Flash不會對ExternalInterface通信施加任何大小限制。

0

我認爲它確實存在,或者有一些其他配置來管理這個。我正在使用FileReference對象測試文件上傳,並希望通過外部接口調用將從服務器發送的數據傳遞迴宿主頁面。下面是我UPLOAD_COMPLETE_DATA事件處理

private function onFileUploadCompleteData (e:DataEvent):void 
    { 
     var file:FileReference = FileReference(e.target); 
     Alert.show("onFileUploadCompleteData : " + e.data); 

     if(ExternalInterface.available && callBackOnUploadCompleteData.length > 0) 
     { 
      var data:Object = new Object(); 
      data.FileName = file.name; 
      data.ServerData = e.data; 
      //data.ServerData = e.data.substr(0, 50); 
      ExternalInterface.call(callBackOnUploadCompleteData, data); 
     } 
    } 

此事件被炒魷魚,但以我的javascript調用是從來沒有的片段。如果我取消將返回的數據修剪爲前50個字符的行的註釋,它將開始工作並正確調用JavaScript。

閃存(10.2)或IE9(這是我正在使用的)施加的大小限制,或者還有其他東西丟失。

+1

base64encode數據在傳遞給ExternalInterface之前 – 4esn0k 2012-01-20 04:59:11

+0

謝謝,我需要測試這個。有沒有簡單的方法來編碼在Flex? – 2012-03-03 00:20:36

相關問題