現(xiàn)在正在做一個(gè)flex的項(xiàng)目。語(yǔ)言中基本上的對(duì)象都是保存在Application里的。當(dāng)application對(duì)象釋放時(shí),對(duì)象也消失。但是其中用到了一個(gè)SharedObject,它可以把對(duì)象像cookie一樣保存在磁盤里。(磁盤路徑C:\Documents and Settings\用戶名\Application Data\Macromedia\Flash Player)
SharedObject是通過(guò)flash communication server 來(lái)在多個(gè)對(duì)象之間,能夠?qū)崟r(shí)的進(jìn)行數(shù)據(jù)共有的對(duì)象。只在本地使用的本地共有對(duì)象是SharedObject對(duì)象活用最簡(jiǎn)單的例子。Flash Communication Server 不是必須的。SharedObject有各種各樣的用途。本文僅對(duì)基本的概念做介紹。SharedObject是將用戶的記錄,喜歡的顏色,最后表示的頁(yè)碼記錄下來(lái)的東西。下面介紹的例子是使用SharedObject來(lái)將用戶輸入的名稱和頁(yè)碼的表示次數(shù)進(jìn)行記錄的東西。
SharedObject是和web瀏覽器做成的cookie來(lái)進(jìn)行數(shù)據(jù)存儲(chǔ)同樣,在客戶機(jī)上來(lái)進(jìn)行保存數(shù)據(jù)用的。數(shù)據(jù)是SharedObject以和SharedObject做成的域作為基點(diǎn),所以除非用戶提供,不可以記錄用戶的電子郵箱地址或者個(gè)人情報(bào)。
SharedObject的做成
使用a.SharedObject 的getLocal方法來(lái)做成SharedObject。在以下的例子中,把對(duì)象文件的變量定義為myLocalSO,以下的ActionScript把flashcookie這個(gè)名字分配給SharedObject。
//本地SharedObject做成
myLocalSO = sharedobject.getLocal("flashcookie");
如果[flashcookie]不存在時(shí),就由Macromedia Flash Player來(lái)做成一個(gè)新的SharedObject。這里請(qǐng)注意以下,SharedObject的名稱沿用flash的命名規(guī)則,并且必須用半角。
b.getLocal方法可以指定一個(gè)叫l(wèi)ocalPath的參數(shù)。根據(jù)這個(gè)localPath參數(shù),可以指定每個(gè)客戶機(jī)的sharedObject是否保存。這個(gè)路徑必須和對(duì)應(yīng)的shared Object保存在同一個(gè)URL里。
代碼是這樣的
myLocalSO = sharedobject.getLocal("flashcookie", "/movies/mymovie.swf");
這樣設(shè)定,在網(wǎng)站內(nèi)有多個(gè)本地Shared Object 存在的時(shí)候就很方便了。
posted on 2009-01-09 23:38
靜兒 閱讀(2111)
評(píng)論(0) 編輯 收藏 所屬分類:
技術(shù)