从flash as3调用javascript,它由不同的域托管



有一个javascript函数运行在sub.website.com和一个flash组件托管在website.com。我添加flash对象到sub.website.com使用对象和嵌入标签,在某种程度上,我希望看到一个javascript函数的结果是由flash对象。但我认为它不允许我这样做,因为跨域的事情。

我没有控制a.website.com,因为它是一个cname定义到另一个网站(我不能上传文件,但我可以添加额外的javascript函数)。

有什么解决办法吗?

我认为您必须使用从sub.website.com到a.website.com的Ajax调用。这个ajax调用可以封装在sub.website.com上的javascript中,可以通过ExternalInterface在SWF中调用。

因此,'sub'服务器上的SWF在'sub'服务器上调用Javascript函数,该函数触发对服务器'a'的Ajax调用,该服务器将一些数据(例如JSON)返回到服务器'sub'的Javascript。因此,服务器'sub'的Javascript可以通过ExternalInterface将数据返回给SWF。

有关外部接口的文档请参阅adobe网站:

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/external/ExternalInterface.html

最新更新