【问题标题】:Prevent swf file from executing scripts that load external files阻止 swf 文件执行加载外部文件的脚本
【发布时间】:2014-04-26 13:01:40
【问题描述】:

我想知道是否可以阻止用户创建的 swf 文件加载外部内容。如果允许用户将 swf 上传到我的网站并在他们的页面上显示他们的 swf,是否可以阻止该 swf 加载外部图像脚本等...

澄清一下:

swf 将存储在与网站相同的域中。

例如

www.example.com/user123

将显示文件:

www.example.com/usercontent/swfs/user123.swf

如何阻止它请求:

www.anotherexample.com/images/someimage.jpg

我在想一个预加载器可能会工作,所以所有 swf(我无法控制)都被加载到一个预加载器(我可以创建/控制)中,其中包含阻止子 swf 执行 as3 函数的代码,例如:

var imageLoader:Loader = new Loader();
var image:URLRequest = new URLRequest("www.anotherexample.com/images/someimage.jpg");

所以我需要阻止任何加载内容的 Flash 功能。

还需要知道如何处理 actionscript 2。这可能会受到限制,只允许 as3 swfs。

【问题讨论】:

    标签: actionscript-3 flash actionscript-2


    【解决方案1】:

    我认为您正在考虑在您的 swf 的嵌入对象标签中设置它:

    <param name="allowScriptAccess" value="sameDomain" />

    allowScriptAccess 的默认设置是“sameDomain”,这意味着 如果 SWF 和周围的 HTML 都是从 相同的完全限定域名,则 SWF 可以与 HTML 的 DOM 和访问数据,例如 cookie 或表单数据。如果 HTML 和 SWF 来自不同的域,则 SWF 不能 访问周围的 HTML。

    您可能还想研究:

    <allow-access-from domain="*"/>
    

    更多信息请点击此处:Cross domain policy file

    【讨论】:

    • 不,这不是我想要的。我知道allowScriptAccess。这是为了允许 swf 访问 javascript。我正在寻求一种技术来限制用户可以请求将哪些内容加载到他们自己的 swf 中,而不是阻止 javascript flash 通信。
    • 在这种情况下,我认为您想调整
    猜你喜欢
    • 1970-01-01
    • 2019-03-22
    • 2010-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-09
    • 1970-01-01
    相关资源
    最近更新 更多