0

我有一个运行在许多站点上的 swf,其中大多数站点都允许脚本访问。对于那些不这样做的人,我试图捕捉错误但没有运气。(我也在检查 ExternalInterface.available 是否为真,但 Flash Player 总是告诉我它是真的。)

static public function callExternal(str:String):Object {
        var result:*;
        try {
            result = ExternalInterface.available?ExternalInterface.call(str):null;
        } catch (e:Error) {
            log.exception(e);
        }
        return result;
    }

这就是我在日志中得到的:

SecurityError: Error #2060: Security sandbox violation: ExternalInterface caller 
(my swf) cannot access (some site)

我可以做些什么来防止在我没有权限时进行此调用或在事后捕获安全错误?

4

1 回答 1

0
static public function callExternal( str:String ):void
{
    try
    {
        ExternalInterface.call( str );
    }
    catch( e:SecurityError )
    {
        trace( 'handle no external interface' );
    }
}
于 2013-09-25T23:30:24.800 回答