0

我写了一点 AS3 代码来测试 Flash cookie。当我在 Adob​​e Flash Professional CS6 中发布它时,它可以正常工作 - 写入、读取,并且在 %APPDATA% 共享对象文件夹中正确写入文件夹/文件: localhost/.../app3.sol 。但是当我通过本地服务器上的 html 页面运行 .swf 时,浏览器(firefox、chrome)无法正确读取/写入 LSO,而不是“localhost”文件夹,它会创建一个“#localhost”并在路径的末尾没有生成 .sol 文件。所以基本上 - 如果 swf 在本地打开,LSO 可以工作,但从服务器打开时不会。

这是我的一段代码:

//gets LSO object / creates if it doesn't exist
var mySharedObject:SharedObject = SharedObject.getLocal("app3");

//output string from LSO to a text field
viewer.text = mySharedObject.data.viewer;

//when button clicked, get textfields current text and save it in LSO
lso_save.addEventListener(MouseEvent.CLICK, saveLso);

function saveLso(e:Event):void
{
    mySharedObject.data.viewer = viewer.text;
    mySharedObject.flush();
}

有任何想法吗?

4

1 回答 1

0

您可以尝试设置"/"SharedObject 的路径:

var mySharedObject:SharedObject = SharedObject.getLocal("app3", "/", false)

更多信息:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/SharedObject.html#getLocal()

于 2014-05-11T12:51:57.790 回答