开发人员已就可以在客户端存储数据了,就像cookies一样。ShareObject有两种格式:本地和远程。这篇文章只讨论
本地ShareObject.远程ShareObject一般和flash communication server一起使用。
很多情况下,ShareObject提供了除cookies外的另一种选择,这是许多开发者没有考虑过的。
1、 存储简单数据
在ShareObject中存储简单数据是相当简单的工作,我们先用ShareObject存储一个用户自定义的对象,然后将讨论用ShareObject存储内建
类的实例的问题。一个用户自定义对象可以这样创建:
myObj = new Object(); //or myObj = {};
在ShareObject中存储myObj是很简单的,首先你需要创建一个本地ShareObject的引用:
myLSO = SharedObject.getLocal("foo");
getLocal方法的第一个参数是ShareObject的名字,getLocal()方法也有第二个可选参数:一个字符串类型的路径。大多数情况下你用不到这个参数,除非你在多个swf文件中共用同一个ShareObject。现在为了在ShareObject中储存数据,你需要给ShareObject指定“数据特性”(data property)。现在创建一个ShareObject引用,以及你想存储的对象,最后存储这个对象到“数据特性”中。
例子:
myLSO = SharedObject.getLocal("foo");
myObj = {};
myObj.fname = "Jessica";
myObj.lname = "Smith";
myLSO.data.myObj = myObj
foo就是这个共享对象的标识,shareobject可以存贮很多的对象,用这个foo可以指定我们要的数据。
关于远程shareobject可以参见http://hacker47.iteye.com/blog/208389
hacker已经将这个问题讲得很清楚了。