闪存读取cookie没有JavaScript

时间:2012-06-26 16:54:37

标签: flash flex cookies

我有一个flash swf对象嵌入在facebook新闻源中。除了swf文件本身,我无法控制任何其他内容。它托管在我们的服务器上,我需要能够读取我们的主要网站设置的cookie。

我能找到的所有内容都谈到了使用外部javascript来读取和设置cookie,但我想从flash内部做到这一点。

2 个答案:

答案 0 :(得分:2)

使用ExternalInterface实际上可以比人们意识到的更多。在AS3中定义函数,然后将其作为ExternalInterface.call中的参数传递给ExternalInterface。我构建了一个简单的AS3项目,将其作为主类的属性。

private var myTestJS:String = "function myTest(parameter){alert(parameter);return parameter;}";

,这在构造函数

var mycookievalue:String = ExternalInterface.call(myTestJS, "Yay for ExternalInterface");

构建一个快速项目,调试它,你会看到警报被调用以及mycookievalue被正确设置。现在,您只需要用您的js代码替换我的测试函数来获取cookie。

答案 1 :(得分:0)

Flash Player无法访问浏览器Cookie。 ExternalInterface方法是让JavaScript为您完成的一种技巧。

Flash Player可以访问共享对象,这类似于Flash Player的Cookie版本;但一般Flash和浏览器不共享cookie。