【问题标题】:Loading data (HTML) from external domain into Flash Actionscript 3将数据 (HTML) 从外部域加载到 Flash Actionscript 3
【发布时间】:2010-08-27 21:12:06
【问题描述】:

我正在尝试使用 Actionscript 3 将 HTML/CSS 从外部域加载到 SWF 中。当我从 Flash 中“测试电影”时,数据会正确加载。但是,当我将 SWF 上传到网站时,它将不再导入数据。这是我的代码示例...

import flash.events.MouseEvent;
var req:URLRequest = new URLRequest("http://website.com/feeds/feed-upcoming-events.php?limit=12&format=html");
var loader:URLLoader = new URLLoader();
var cssReq:URLRequest = new URLRequest("http://website.com/feeds/feed-upcoming-events.css");
var cssLoader:URLLoader = new URLLoader();

function fileLoaded(event:Event):void
{
    this.feed_ani_mc.feed_mc.feed_txt.htmlText = loader.data;
}

function cssLoaded(event:Event):void
{
    var sheet:StyleSheet = new StyleSheet();
    sheet.parseCSS(cssLoader.data);
    this.feed_ani_mc.feed_mc.feed_txt.styleSheet = sheet;
}

loader.addEventListener(Event.COMPLETE, fileLoaded);
loader.load(req);
cssLoader.addEventListener(Event.COMPLETE, cssLoaded);
cssLoader.load(cssReq);

【问题讨论】:

    标签: flash actionscript-3


    【解决方案1】:

    您确定要加载的 URL 正确吗?我尝试了http://website.com/feeds/feed-upcoming-events.php?limit=12&format=html,但它返回了 404 错误。

    我会安装Tamper Data on Firefox 以查看您的网站加载时发生的情况。也许您的服务器上缺少一个 crossdomain.xml 文件,以允许您快速进行外部调用。

    【讨论】:

    • 我在代码示例中用“website.com”代替了实际的域。我将检查 Tamper Data,并对 crossdomain.xml 进行一些研究。周一回到办公室后,我会告诉你我发现了什么。
    • 我缺少 crossdomain.xml 文件
    【解决方案2】:

    您可以收听以下事件以评估您的数据未加载的原因。

    flash.events.SecurityErrorEvent flash.events.IOErrorEvent

    听起来可能是安全错误,在这种情况下,跨域策略文件应该可以解决您的问题

    【讨论】:

    • 我也在想同样的事情。我将对整个“跨域”的东西进行一些研究,并在周一回到办公室时告诉你进展如何。
    • 关键是你的SWF和HTML是否在同一个域(意思是整个域,包括端口号都是一样的)。如果是,则绝对不是跨域问题,否则可能是。
    【解决方案3】:

    试试这个 crossdomain.xml,用于开发服务器:

    <?xml version="1.0"?>
    <cross-domain-policy> 
    <allow-http-request-headers-from domain="*" headers="*" secure="false" /> 
    <allow-access-from domain="*" secure="false" to-ports="*"/> 
    </cross-domain-policy>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-11-04
      • 1970-01-01
      • 2011-04-04
      • 2012-07-25
      • 1970-01-01
      • 2012-04-11
      • 2018-07-09
      相关资源
      最近更新 更多