1

我有简单的 flex 应用程序,它读取 XML 文件并显示在 dataGrid 中。我在更改 XML 文件时遇到问题,因此即使我重新启动 Chrome,Chrome 也不会在刷新后刷新此 XML 数据。我认为 XML 数据会留在 Chrome 缓存中吗?
我怎样才能自动刷新这些数据?在 Firefox 功能中一切正确..
我的弹性代码:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
               xmlns:s="library://ns.adobe.com/flex/spark" 
               xmlns:mx="library://ns.adobe.com/flex/mx"
               creationComplete="aktualityService.send()">
    <fx:Script>
        <![CDATA[
            import mx.collections.ArrayCollection;
            import mx.controls.Alert;
            import mx.rpc.events.FaultEvent;
            import mx.rpc.events.ResultEvent;


            [Bindable]
            private var xmlData:ArrayCollection;

            protected function aktualityService_resultHandler(event:ResultEvent):void
            {
                xmlData = new ArrayCollection();

                for each (var aktualita:Object in event.result.aktuality.aktualita)
                {
                    xmlData.addItem(aktualita);
                }
            }

            protected function aktualityService_faultHandler(event:FaultEvent):void
            {
                Alert.show("ERROR read xml: " + event.fault.faultString);               
            }

        ]]>
    </fx:Script>

    <fx:Declarations>
        <s:HTTPService id="aktualityService"
                       url="data/aktuality.xml"
                       result="aktualityService_resultHandler(event)"
                       fault="aktualityService_faultHandler(event)"
                       method="GET"/>

    </fx:Declarations>


    <s:DataGrid id="dataGridId"
                y="100" x="0" dataProvider="{xmlData}" />
</s:Application>

然后我在 flash builder 中导出发布版本并复制到我的服务器。

4

1 回答 1

3

为了防止缓存在文件路径后使用随机数,例如:

<s:HTTPService id="aktualityService"
               url="data/aktuality.xml?{UIDUtil.createUID()}"
               result="aktualityService_resultHandler(event)"
               fault="aktualityService_faultHandler(event)"
               method="GET"/>
于 2013-04-22T14:26:25.557 回答