获取正在调用swf的服务器域

时间:2013-01-23 11:10:32

标签: javascript jquery actionscript-3 flash

我在域名上托管了SWF,请说www.aaa.com。我将swf嵌入到www.bbb.com上的html页面中。现在,在SWF中,我如何获得嵌入SWF的域,即在我的示例www.bbb.com中?

我可以通过javascript进行操作,然后将域名传递给as3,但是我想在SWF中根据某些要求进行操作。另外,我不想在www.bbb.com上的另一个SWF中加载我的SWF。

任何答案......?

2 个答案:

答案 0 :(得分:1)

你说你是在bbb域上嵌入flash,所以我想你可以访问bbb的服务器页面生成器。

在这种情况下,我只会在flashVars中包含域名,例如:topdomain=<?php echo(urlencode($_SERVER['SERVER_NAME'])); ?>

然后访问swf中的topdomain变量。如果它未定义,假设它是从其他地方嵌入的

答案 1 :(得分:0)

是的,你可以在任何精灵中执行此操作:

//this will work in any pure AS3 class
var sp:Sprite = new Sprite;
trace(sp.loaderInfo.url);

如果您使用的是Flex,请在将子项添加到舞台/显示列表后执行此操作。

要获取域名,您可以使用正则表达式来解析网址,或者只查找“http://”和“/”之间的字符串。