日期:2013-12-21  浏览次数:20589 次

今天测试的时候发现这个方法,限制 Flash 在指定域名中播放。可能这个方法有些老了,不过还是有一定防止破解的效果,我亲身尝试了不得不强行结束任务。

url = "http://www.Aiyiweb.Com";

/*
以下判断网址的前 20 个字符(字符数依据你的网址作相应修正),如果与"url"不分歧则播放失败。注:swf 可以放在任意目录下,只需网址的前 20 个字符是正确的。
*/

if(_url.substring(0, 20)<>url){
gotoAndStop(2);

/*
这里可以做一些东西,例如:将发布设置中的“本地回放安全性”设为“只访问网络”,然后在这里做无数的弹窗
onEnterFrame = function(){
getURL("http://www.Aiyiweb.Com", "_blank");
}
*/

}else{
gotoAndPlay(3); //跳到正常播放
}

为了便于阅读,以下是没有注释的代码:
url = "http://www.Aiyiweb.Com";
if(_url.substring(0, 20)<>url){
gotoAndStop(2);
}else{
gotoAndPlay(3);
}

如果要允许多个域名,可以这样写:
url = "http://www.Aiyiweb.Com";
url2 = "http://Aiyiweb.Com";
if((_url.substring(0, 20)==url) || (_url.substring(0, 16)==url2)){
gotoAndPlay(3);
}else{
gotoAndStop(2);
}

留意:用此方法,设计过程中导出时的技巧:
用IE打开先打开指定目标网址,以避免在导出时频繁弹出窗口,如果无效,请将默认浏览器设置成IE,关闭导出时的player窗口即可继续编辑,留意,有时会让Flash软件发生错误而被强行结束,导出前请保存文档,切记!