2010-10-03 29 views
1

在我的Flex应用程序下载图片:Flex应用程序不能从其他服务器

<mx:Image id="imgItem" source="http://notMySyte.com/1.jpg"/> 

当我运行我的应用程序,我抓住这个错误:

SecurityError: Error #2123: Security sandbox violation: Loader.content: http://mySite.com/2/BusFlex/BusProducts.swf/[[DYNAMIC]]/2 cannot access http://cs9621.notMySite.com/u7397474/c_b51d9fe6.jpg. A policy file is required, but the checkPolicyFile flag was not set when this media was loaded. 
at flash.display::Loader/get content() 
at mx.controls::SWFLoader/get content() 
at mx.controls::SWFLoader/doSmoothBitmapContent() 
at mx.controls::SWFLoader/updateDisplayList() 
at mx.controls::Image/updateDisplayList() 
at mx.core::UIComponent/validateDisplayList() 
at mx.managers::LayoutManager/validateDisplayList() 
at mx.managers::LayoutManager/doPhasedInstantiation() 
at mx.managers::LayoutManager/doPhasedInstantiationCallback() 

请帮助我。

回答

2

你需要明确允许建立在你的根文件夹crossdomain.xml文件跨域访问。

<?xml version="1.0" encoding="utf-8"?> 
    <cross-domain-policy> 
     <allow-access-from domain="*" /> 
    </cross-domain-policy> 
    ... 
+0

我有这个文件。但是,没有什么( – GLeBaTi 2010-10-03 16:03:26

+1

这个答案是有点不清楚当@colithium说:“你的根文件夹”,他指服务于图片,不提供SWF – JeffryHouser 2010-10-03 17:18:13

+0

radical.ru域的根文件夹中的域的根文件夹 - 。这是托管我的图片http://www.radikal.ru/crossdomain.xml - 这个托管的crossdomain文件。他是有效的。http://chfmm.ru/2 - 我的网站。点击坐,你会看到预览坐在点击在有些坐不住了,你看到这个错误 – GLeBaTi 2010-10-16 10:22:31

1

网站,您是从加载图像必须通过举办跨domain.xml文件中明确授予的Flash/Flex应用程序。

1

你需要有一个crossdomain.xml文件。之后,您需要使用代码明确加载该跨域文件:

Security.loadPolicyFile("http://foo.com/crossdomain.xml"); 
相关问题