当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > Flash Player 7 安全策略解析

Flash动画制作
巧用超级解霸在Flash V5.0中插入录像
教你用Flash MX来制作简单的课件界面
Flash MX 2004 ActionScript图文教程(二)
Flash MX 2004 ActionScript图文教程(三)
Flash MX 2004 ActionScript图文教程(四)
Flash MX 2004 ActionScript图文教程(五)
Flash MX 2004 ActionScript图文教程(六)
flash场景之间相互跳转的实现方法
Flash本地加密
FLASH -- 关于变量的问题FLASH -- 关于变量的问题
Flash5 画任意直线教程
Flash MX 视频导入功能详解
制作飞舞的蝴蝶
Flash MX 2004 ActionScript图文教程(七)
Flash MX 2004 ActionScript图文教程(八)
Flash MX 2004 ActionScript图文教程(九)
Flash MX 2004 ActionScript图文教程(十)
Flash教程 飞翔的文字
Flash MX 2004 ActionScript图文教程(十一)
制作Flash网站技巧拾零

Flash动画制作 中的 Flash Player 7 安全策略解析


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-22   浏览: 37 ::
收藏到网摘: n/a

    在Flash Player 6或以前,利用loadVariables()、loadVariablesNum()、LoadVars()、XML.load()等载入外部数据,是不可以跨Domain,即在domainA.com的Flash不可以载入在domainB.com的数据。但载入Sub Domain的数据是容许,即放在www.luar.net、luar.net、foo.luar.net的Flash都可以载入在此3个不同的Sub Domain的数据。

  Flash Player 7却带来了坏消息,它收紧了安全政策,载入Sub Domain的数据是不容许,不过这只对使用了Absolute Path的Flash有影响,例如loadVariablesNum("http://www.domainA.com/data.txt", 0),一般Web Server都可以设定短网址,例如http://domainA.com,如果Flash通过短网址载入,那麽载入外部数据就会受到影响。

  Flash 6版本的Flash,在Flash Player 7播放会出现警告字句,需要访客决定是否准许载入外部数据∶


图1 访客安全

  Flash 7版本的Flash,在Flash Player 7播放就索性没有警告字句,根本载入外部数据的动作已经被否决了。

  解决方法,制作一个名叫crossdomain.xml,放在外部数据的Server的root,即http://www.domainB.com/crossdomain.xml。XML文件里,有一行∶

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

  你可以自行加入容许路径,例如∶

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

  <allow-access-from domain="luar.net" />

  <allow-access-from domain="www.luar.net" />

  <allow-access-from domain="*.luar.net" />

  通过加入crossdomain.xml,因此也带来一个好消息,Flash Player 7可以载入跨Domain的外部数据!无论是Flash 6或7版本的Flash,只要在Flash Player 7播放,domainB.com的Server有crossdomain.xml这文件,里面有∶

  <allow-access-from domain="*.domainA.com" /> 或

  <allow-access-from domain="*" /> 容许任何domain

  在domainA.com的Flash就可以载入它的数据。

  补充

  Flash MX 2004 Professional提供了Data Binding, Web Services组件,网络上有不少免费公开的Web Services,但是因为Flash Player 7这安全政策,根本得物而无所用,真荒谬!(除非那些Web Services网站可以加入crossdomain.xml)