Flex缺乏策略文件权限问题
今天遇到的一个问题,读取网站上的一个XML文件被拒绝,错误描述如下:
*** 安全沙箱冲突 ***
到127.0.0.1:8080的连接已停止 - 不允许从d:/flex/work/bin_debug/work.swf进行连接
错误:拒绝请求位于 http://127.0.0.1:8080/php/work.xml 的资源(请求者从d:/flex/work/bin_debug/work.swf发出请求),原因是缺乏策略文件权限。
跨域访问需要配置策略文件,http://localhost:8080和http://127.0.0.1:8080被看做是不同的域,写个crossdomain.xml,放到站点根目录下:
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy
SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-access-from domain="*" />
</cross-domain-policy>
这里的"*"指的是允许所有站点的访问,你可以自己指定,把localhost,127.0.0.1都写到allow-access-from 里面的domain属性中.
相关文档:
新手入门参考:
Adobe Flex 3 - adobe.com
Adobe Flex Sample Applications - adobe.com
Video Training (Learn Flex in a Week) - adobe.com
RSS Feeds (Get regular updates about Flex) - adobe.com
Learn about Flex Open Source - adobe.com
Get Flex 3 SDK - adobe.com
Get Flex Builder 3 - adobe.com ......
使用flex的成本
FLex语言本身免费开源
LCDS:
做 remote object access service的,说简单点就是沟通后台java和前台flex直接的桥梁
adobe官方的东西,收费,很贵
BDS: 开源免费,基本上可以完全替代LCDS,也是adobe官方的东西,估计是LCDS没人用,他又不好意思直接免费搞出来的东西
JRUN: 应用服务器,也很 ......
方法一:
<?xml version="1.0"?>
<!-- events/MultipleEventHandlersInline.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script><![CDATA[
private function submitForm(e:Event):void {
// Handle event here.
......
现在flash builder 4已经自带了多种语言包,在使用的时候直接拿过来用就可以了,在使用资源文件的时候,需要设置一下资源参数
-locale=en_US,zh_CN -source-path=locale/{locale}
flex 3.x的版本的sdk只支持英文和日文,如果需要中文,则可以从flex
4.xsdk的\frameworks\locale拷贝zh_CN等文件夹到flex3.x的\frameworks ......
很久没去练习flex 开始有点生疏,用起来还是很舒服。flex 3和flex4之间存在一些差别,所以在选择的时候需要小心一点,今年主推flex 4 所以初学的人可以跳过flex 3直接学flex4。 因为flex 开发是建立在as 3基础上,故此研究类库之间结构是一件很不错的事情。毕竟结构美是学习编程一种美学流。
今天的纯粹练习 ......