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属性中.
相关文档:
在项目中自定义一个CheckboxGroup,这个控件里面包含多个Checkbox想控制Checkbox的行为:所以使用查找一下帮助使用flex中经典方法:getDefinitionByName 函数的使用
public function getDefinitionByName(name:String):Object
返回参数 name 中指定的类引用
参数 name:String - 类名称
返回 Object - 返回参数 name 中 ......
这一次的Flex 实践将要实现以下功能:
1、自定义一个简单的 Flex 组件
2、创建一个Index. mxml 来调用该组件
1)用 as 调用组件
&nbs ......
最简单的方法是本地化编译,即编译不同的语言版本
,然后使用
Application Server
来判定客户使用的是哪种语言,并自动指向对应的
swf
文件。
具体做法如下:
在项目上点击右键,选择
Properties
。
然后选择
Flex Compiler
,在
Additional Compiler arguments
下面已经配置好语言包了,默认为
-locale en_ ......
(注:采用fb4 beta1开发,由于兼容问题,可以适当加以修改放到自己的环境中,测试的时候需要放到服务器上面,本人的测试url为
http://127.0.0.1/astest/asjs.html?msnum=13112345678)
mxml文件:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" creation ......
Adobe Flex开发与传统的Web开发有很多不同之处。正确的理解和利用这些不同之处,可以帮助我们创建更丰富的用户体验,也可以反过来增加网站的可用性以及浏览和更新速度。Flex还提供了大量的组件和技术库来让Web开发更加轻松——它提供的强大工具要远远超过传统Web 2.0中的异步JavaScript和XML(Ajax)应用。此外, ......