|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
自从Macromedia在2005年8月发布MacromediaStudio8以来,我们一直在不停地探索关于它的新特性和新功能,因为这次软件升级给我们带来了太多的惊喜。
AS代码2.0:针对FlashPlayer7(2)
3、SWF文件之间的跨域和子域会见
当你开辟一系列相互通信的SWF文件时,比方,当利用loadMovie()、MovieClip.loadMovie()、MovieClipLoader.LoadClip()命令或当地毗连工具时,你大概把这些动画文件寄存在分歧的域或一个超域的分歧的子域中。
在针对Flash5或更早版本的播放器公布的文件中,跨域或子域会见不受限定。
在针对Flash6播放器公布的文件中,你可使用LocalConnection.allowDomain事务处置函数或System.security.allowDomain()办法来指定同意跨域会见(比方,让在someOtherSite.com域的文件会见在someSite.com域的文件),且无需用命令来同意子域会见(比方,在store.someSite.com子域的文件能够会见在www.someSite.com子域的文件)。
在针对Flash7播放器公布的文件中,SWF文件之间的会见与初期版本有两个方面的分歧。起首,Flash7播放器实行准确域婚配而不是超域婚配划定规矩。因而,被会见的文件(即便是针对初期的Flash播放器版本而不是Flash7播放器公布的文件)必需显式指定同意跨域或子域会见。其次,寄存在利用平安协定(HTTPS)站点中的文件,必需显式指定同意来自利用不平安协定(HTTP或FTP)的站点的文件的会见。
由于Flash7播放器实行准确域婚配而不是超域婚配划定规矩,假如你想要针对Flash7播放器公布的文件可以会见你现有的剧本,你大概必要修正这些剧本。(你仍旧能够针对Flash6播放器公布修正过的文件。)
假如你在文件中利用LocalConnection.allowDomain()或System.security.allowDomain()语句,并指定同意会见超域站点,你必需修正你的参数来指定正确的域。上面的代码申明你大概必要举行的修正:
//同意寄存在www.someSite.com或store.someSite.com域的SWF文件会见
//寄存在www.anyOldSite.com域的SWF文件中的Flash6播放器命令
System.security.allowDomain("someSite.com");
my_lc.allowDomain=function(sendingDomain){
return(sendingDomain=="someSite.com");
}
//同意针对Flash7播放器公布的SWF文件会见的对报命令
System.security.allowDomain("www.someSite.com","store.someSite.com");
my_lc.allowDomain=function(sendingDomain){
return(sendingDomain=="www.someSite.com"||
sendingDomain=="store.someSite.com");
}
假如你以后还没有利用这些语句,你也大概必要增加如许的语句。
比方,假如你的SWF文件寄存在www.someSite.com域,且你想同意寄存在store.someSite.com域针对Flash7播放器公布的SWF文件会见,你必需给寄存在www.someSite.com域的文件增加以下语句(你仍旧能够针对Flash6播放器公布寄存在www.someSite.com的文件):
System.security.allowDomain("store.someSite.com");
my_lc.allowDomain=function(sendingDomain){
return(sendingDomain=="store.someSite.com");
}
总的来讲,假如你针对Flash7播放器公布文件且切合以下前提,你大概要修正你的文件,增加或修正allowDomain语句:
①你编写跨SWF文件的剧本
利用loadMovie()、MovieClip.loadMovie()、MovieClipLoader.LoadClip()或当地毗连工具。
②被挪用的SWF文件(任何版本)不是寄存在利用平安协定(HTTPS)的站点,或挪用的和被挪用的SWF文件都寄存在利用平安协定(HTTPS)的站点。
③SWF文件不在不异的域
比方,一个文件在www.domain.com,另外一个在store.domain.com。
为此你必要做以下修正:
①假如被挪用的SWF文件是针对Flash7播放器公布的,在被挪用的SWF文件中包括System.security.allowDomain或LocalConnection.allowDomain语句,利用准确域名婚配。
②假如被挪用的SWF文件是针对Flash6播放器公布的,修正被挪用的SWF文件,增加或修正System.security.allowDomain或LocalConnection.allowDomain语句,利用准确域名婚配(如本节后面的代码所示)。你能够针对Flash6或7播放器公布修正过的文件。
③假如被挪用的SWF文件是针对Flash5或之前的播放器版本公布的,针对Flash6或7播放器公布被挪用的SWF文件,增加System.security.allowDomain语句,利用准确域名婚配(如本节后面的代码所示)。(Flash5及之前的播放器版本不撑持当地毗连工具。)
</p>
flash影片的后缀名为.swf,该类型文件必须有flash播放器才能打开(包括各大浏览器,视频播放器),且播放器的版本须不低于FLASH程序自带播放器的版本。 |
|