我需要我的swf能够看到它加载的页面的域。通常,对于这个我只看外部接口上的window.location,但在这种特殊情况下,swf将嵌入allowcriptaccess =“never”,因此不会起作用。是否有一个真正的api会给我这个或者我是否必须诉诸丑陋的黑客?
答案 0 :(得分:2)
Actionscript 3实际上有一个你可以在flash.system.Security
(http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/system/Security.html#pageDomain)中直接查询的属性,如下所示:
import flash.system.Security;
...
var domain:String = Security.pageDomain;
它将为您提供包含swf的HTML页面的" [t]域名部分。"
答案 1 :(得分:0)
你试过这个:
var pageURL:String = stage.loaderInfo.url;
答案 2 :(得分:0)
loaderInfo.loaderURL
答案 3 :(得分:0)
事实证明,没有直接的方法可以做到这一点。但是,您可以执行以下操作:
为了防止这个值被伪造(由直接链接到静态文件服务器的人,跳过重定向),你必须让你的静态文件服务器验证get变量的值是否与中的值相同在提供文件之前的referer标题(我知道你可以在nginx中完成)。