作者bmzz (bmzz)
看板Flash
标题[问题] Flex 的 HTTPService
时间Sun Jan 24 14:24:05 2010
此问题已解决,将解决的方式整理一下。
除了a大的提示,我也参考了
http://topic.csdn.net/u/20080618/14/1a61c619-542c-43d4-8197-2c0b0546c83b.html
===========
原本
<mx:HTTPService id="service"
url="data.xml"
...
/>
修改後
<mx:HTTPService id="service"
url="{'data.xml?random=' + Math.random().toString()}"
...
/>
便可欺骗浏览器每次都是不同的 Request,缺点是
「Temporary Internet Files」内,会产生一堆
data.xml?random=0.1234545444
data.xml?random=0.4587777454
....
=======================================================
过程是这样的,
我将资料放置在一个 xml 档案内,并利用 Flex MXML 的
<mx:HTTPService id="service" url="data.xml"
useProxy="false" method="POST"
result="serviceResponse(event)"
/>
将资料取出,并呈现在一份 table 中。
以上,都还正常,资料也有正确呈现在 table 上。
========
但当我更动 Server 端的 data.xml 时,我发现 Client(IE7) 不管我
如何重新整理 test.swf ,更改过的 data.xml 资料就是不会更新,
table 中依然还是旧的资料,必须「删除所有浏览历程纪录」或是至
http://serverIP/data.xml 按下重新整理才会更新。
这个问题我在 html + jQuery 时也有遇到过,当时是在
$.ajax({
...
cache: false,
...
});
加个 cache:false 就解决这个问题了。
不知道有没有先进处理过这个问题?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.217.31.28
※ 编辑: bmzz 来自: 61.217.31.28 (01/24 14:31)
1F:→ aquarianboy:试试看给你的xml路径加个乱数,如data.xml?r=121212 01/24 15:13
2F:→ aquarianboy:121212是random()长出来的 01/24 15:14
3F:→ bmzz:.....random=' + Math.random().toString().... 01/24 15:16
4F:→ bmzz:我刚好也 Search 到一样的方式,但还是不行.... 01/24 15:16
5F:→ bmzz:a大的方法是可以的..真是抱歉..浪费a大的时间了 01/24 15:26
6F:→ bmzz:因为我编译好,虽丢进 Server 资料夹内,但 Client 01/24 15:27
7F:→ bmzz:未先删除所有历程纪录(把 test.swf 删掉) 01/24 15:27
8F:→ bmzz:所以它一直用旧的 swf 档案,自然不行..感谢a大 & Sorry! 01/24 15:27
※ 编辑: bmzz 来自: 61.217.31.28 (01/24 15:35)
9F:→ bmzz:为了找这个问题我一堆储存的表单都要从 key 了XD 01/24 15:37
※ 编辑: bmzz 来自: 61.217.31.28 (01/24 15:56)