不可见的 Flash:通过使用不可见的 Flash Player 增强 Web 应用程序
2010-07-09 00:00:00 来源:WEB开发网本地共享对象
Flash Player 为 Flash 应用程序提供了本地存储空间。默认情况下,每个域有 100 KB 的限制。这样很好:可获得是 HTTP cookies 的 25 倍的空间。还有其他一些重要的差异。其一,Flash 中存储的客户端数据不会发送给服务器,因为它与 HTTP 没有任何关系。当然,如果您愿意,也可以将这些数据发送给服务器。这样做不会有任何障碍。然而,您必须选择发送哪些数据以及以什么方式发送。如果您真的希望客户端和服务器都包含这些数据,这就有点复杂了。但是,这通常更加安全,因为您必须在网络中显式 “公开” 这些数据。
用于存储和检索本地数据的 Flash API 是 SharedObject。其实,Flash 的 SharedObject 概念也可以是远程的,因此,仅存在于客户端的变体也称为本地 SharedObject。该 API 非常简单,它允许使用键-值范式存储和检索任意复杂的对象。清单 1 是存储和检索 SharedObjects 的简单代码。
清单 1. 存储和检索 SharedObjects
package{
import flash.display.Sprite;
import flash.net.SharedObject;
public class JsHelper extends Sprite{
private const SO_NAME:String = "helperSo";
private function saveLocal(name:String, value:Object):void{
var so:SharedObject = SharedObject.getLocal(SO_NAME);
so.data[name] = value;
so.flush();
}
private function readLocal(name:String):Object{
var so:SharedObject = SharedObject.getLocal(SO_NAME);
return so.data[name];
}
}
}
更多精彩
赞助商链接