升級到 Flash Player 10 將會造成無法使用Flash檔案上傳功能

  分享到噗浪!

雖然 Flash Player 10 的出現又多了一堆又酷、又炫的功能,不過因為一些「安全」的議題,導致 Adobe 將 Flash Player 10 中的 FileReference 這個類別做了一些改變,而這個類別中有個 FileReference.browse() 方法,可以開啟一個檔案瀏覽的視窗,用來讀取使用者端本機的檔案,最常用這個功能的應用就是「檔案上傳」功能了。在 Flash Player 9 以前,使用者個方法是沒問題的,但是到了 Flash Player 10 又更嚴格的要求 FileReference.browse() 方法的使用方式,不能透過 JavaScript 直接呼叫了,而改成一定要是由「人」點選時「直接呼叫 FileReference.browse() 方法才能使用」,這導致網路上最常見的幾套 Flash 上傳元件全軍覆沒!

我在 介紹幾套好用的檔案上傳元件 文章中就有介紹過幾套好用的檔案上傳元件,而網路上最常見、也功能最強大的,莫過於使用 JavaScript + Flash 所開發出來的元件,我們最常用的就是 SWFUpload 元件了,到目前為止還處於無解的狀態。而像是 WordPress 這樣知名的 Blog 系統中也使用了 SWFUpload 元件,同樣遭受池魚之殃。另外像是 Flickr 這樣知名的大站也都是緊急修改檔案上傳的介面,原本很好用的 Flash 檔案上傳機制現在都不能用了!

目前 SWFUpload 似乎尚未解決此問題,但 FancyUpload 好像已經解決了(參考 FancyUpload for Flash 10 頁面),其他的就要看各家套件的更新速度了。

今天是因為有客戶跟我說他們有同事沒辦法在網站後台使用檔案上傳功能,才讓我發現這個問題的,去查詢了一下國外的資料發現這問題已經存在好幾個月了,而且公幹的人非常多(見相關連結中部分文章的評論留言),大部分人都建議先暫時將 Flash Player 10 移除,否則這問題短時間內應該是無解。

不知道這次 Adobe 為了「安全性」而犧牲「相容性」算不算是正確的決定,畢竟「安全性」的問題好像還不止這個,這個真的是最重要的嗎?Clickjacking 的問題呢?

相關連結

將 Adobe Flash Player 10 降版到 Adobe Flash Player 9 的方法

  1. 先打開「控制台」中的「新增或移除程式」功能,並移除 Adobe Flash Player 10 ActiveX 軟體

    image

  2. 之後到 這裡 下載舊版的 Flash Player 9 即可

    請下載 Download the Windows Flash Player 9 ActiveX control content debugger (for IE) 這項

  3. 安裝完成後就完成降版手續了。

此文章由 will 發表於 2008/10/22 上午 12:17:36

永久連結 | 評論 (10) | 此文章的RSSRSS comment feed |

分類: ASP.NET | JavaScript | Web

標籤: , ,

評論

十月 23. 2008 22:17

軟體邦

很棒的介紹和說明,本篇文章引用於此。
動畫播放器:Flash player v9
http://software.sopili.net/2008/10/flashplayer-9/

軟體邦 Taiwan

十月 29. 2008 12:03

Kuon

Adobe 為了「安全性」而犧牲「相容性」算不算是正確的決定 # 我覺得是正確決定, 短期陣痛一定會有, 尤其像是 Flash File Upload 影響的可以是系統安全設定的未授權讀取, 也可以外洩的是使用者的資料檔.
Flash 的安全問題已久, 過去 Adobe 不重視, 近年開始重視, 最主要還是 Malicious Flash 越來越多了. 總不會希望看個 Youtube 影片的同時, 檔案被偷偷上傳吧.

Kuon Taiwan

十一月 6. 2008 11:43

Questa

你好,我去我的控制台-新增/移除程式裡看了一下,我確實已經安裝了"Adobe Flash Player 10 ActiveX",但是我的情況與你說的有些不同,我去瀏覽FancyUpload的範例,確實已無法正常運作,會跳出error的Messagebox;但是我去SWFUpload的網站試用範例,卻是沒有任何問題,與之前無異吶..

Questa Taiwan

十一月 6. 2008 11:51

will

SWFUpload 好像上上個星期才推出 SWFUpload v2.2.0 Beta 1 已解決此問題,不過目前還在 Beta 階段,但問題似乎是已經解決,只是要改的地方還不少。

SWFUpload v2.2.0 Beta 1 Released
http://www.swfupload.org/forum/news/827

SWFUpload v2.2.0 Beta 1 has been released. v2.2.0 add Flash Player 10 support. This means a set of new APIs and a fundamental change in the way SWFUpload works.

will Taiwan

十一月 27. 2008 09:29

Sam

寫的真好, 版主可以借我轉貼在我部落格上嗎?我會加上原文出處

Sam Taiwan

十一月 27. 2008 11:05

will

可以的。

will Taiwan

十二月 11. 2008 19:59

CRO.R.King

此问题已经有解决方案!
WP http://www.roading.net/blog/?tag=flash

CRO.R.King People's Republic of China

十二月 11. 2008 20:05

will

我們已經在用 SWFUpload v2.2.0 Beta 3 ,感覺已經沒什麼問題了。
http://swfupload.org/forum/news/937

will Taiwan

十二月 19. 2008 16:14

haleluya

請問我用FF會無法上傳
選完檔案會出現"Error #2038: 檔案 I/O 錯誤。"
這個會是什麼問題呢?

我用IE完全沒問題可以上傳

haleluya Taiwan

十二月 19. 2008 16:43

will

不清楚耶,我這裡沒這個問題。

will Taiwan

新增評論


( 您輸入的Email不會顯示於網站上 )

  Country flag

biuquote
  • 評論
  • 線上預覽
Loading