作者nckumfc (You guess)
看板Flash
标题Re: [问题] XML档案取Node的値
时间Mon Mar 28 18:28:34 2011
恕删
抱歉!! 今天清晨,我提出来的问题完全是我弄错了,睡醒後再重新弄一次,发现我提的
问题是不存在的,完全搞错Orz,真的很抱歉。
我先贴我flash的程式码
var myLoader:URLLoader = new URLLoader();
myLoader.load(new
URLRequest("Test_XML.aspx?ran="+randRange(0,9999)));
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
跟之前的
http://IP/Test_XML.aspx?ran=6731写法ㄧ样 IP代表网址
flash会呼叫下面的Test_XML.aspx的程式码产生XML,但是trace(old_xml)的是空的,
但是Visual studio 在debug模式下有看到flash 呼叫该网页,并产生XML资料,
可是为什麽flash没收到Test_XML.aspx产生的XML资料?
old_xml = new XML(myLoader.data);
再来是Test_XML.aspx的程式码 (产生XML)
XmlTextWriter writer =
new XmlTextWriter(Response.OutputStream, System.Text.Encoding.UTF8);
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
我也有将此处改成写入档案,确实也有产生档案。
writer.WriteStartDocument();
writer.WriteStartElement("Node");
//Node的内容是要给Flash使用的
writer.WriteStartElement("NodeInformation");
//存入使用者ID
writer.WriteElementString("UesrID", usi.UserID);
//给录音档案一个档案名称
writer.WriteElementString("Time",
DateTime.Now.ToString("yyyyMMddHHmmssffff"));
//使用者点选哪一个NodeID
writer.WriteElementString("NodeID",
Session["NodeID"].ToString());
writer.WriteEndElement();
writer.WriteEndElement();
writer.WriteEndDocument();
writer.Flush();
writer.Close();
我的作法是参考别人给我的程式码,只是他是用AS 2.0,我的是AS 3.0 ,
还是作业系统也会有差,他的OS 是 XP, 我的OS 是 Server 2003 。
现在真的毫无头绪,希望S大能给我ㄧ下建议,谢谢。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.116.177.53
1F:→ eroticpig:load()以後,要侦听外部资料载入的的进度。 03/28 18:48
2F:推 KawasumiMai:加入监听才呼叫把data转给xml吧 03/28 19:43
3F:→ nckumfc:可以说详细一点吗? 不是很懂 03/28 21:06
4F:推 KawasumiMai:myLoader.load(...............) 之後 03/28 21:20
5F:→ KawasumiMai:myLoader.addEventListener(Event.COMPLETE,func) 03/28 21:20
6F:→ KawasumiMai:function func(event:Event){ 03/28 21:21
7F:→ KawasumiMai: old_xml = new XML(myLoader.data) 03/28 21:21
8F:→ KawasumiMai: ... 03/28 21:21
9F:→ KawasumiMai:} 03/28 21:22
10F:→ nckumfc:我试试 03/28 21:22
11F:→ nckumfc:还是取得null的値 我贴我写的,麻烦大家帮我看ㄧ下 03/28 22:05
12F:→ nckumfc:myLoader = new URLLoader(); 03/28 22:05
13F:→ nckumfc:myLoader.load(new URLRequest("Test_XML.aspx?ran="+rand 03/28 22:06
14F:→ nckumfc:Range(0,9999))); 03/28 22:06
15F:→ nckumfc:myLoader.addEventListener(Event.COMPLETE, xmlLoaded); 03/28 22:06
16F:→ nckumfc:function xmlLoaded(e:Event){ 03/28 22:07
17F:→ nckumfc:old_xml=new XML(e.target.data); 03/28 22:07
18F:→ nckumfc:UserID = old_xml.NodeInformation.UesrID; 03/28 22:07
19F:→ nckumfc: Time = old_xml.NodeInformation.Time; 03/28 22:07
20F:→ nckumfc:NodeID = old_xml.NodeInformation.NodeID; 03/28 22:07
21F:→ nckumfc:} 03/28 22:08
22F:推 KawasumiMai:是new XML(myLoader.data)吧 03/28 22:22
23F:→ KawasumiMai:e是Event本身,你抓他的data应该不是xml啊 03/28 22:23
24F:→ nckumfc:改成old_xml = new XML(myLoader.data); 还是取不到値 Orz 03/28 22:34
25F:推 scars:所以你是在哪里取他的值? 别说是在xmlLoaded外面喔 03/29 00:02
26F:推 scars:你直接用我 9277 回的那些code trace出来还是null的话 03/29 00:06
27F:→ scars:表示你的url连过去没东西 03/29 00:06
28F:→ nckumfc:是在function xmlLoaded(e:Event)里面取値 03/29 00:44
29F:→ nckumfc:trace 出来还是null,我不懂为什麽flash载入Test_xml.aspx 03/29 00:46
30F:→ nckumfc:Visual studio 在Debug模式下,有看到此页面在产生XML的 03/29 00:47
31F:→ nckumfc:资料串流,看起来flash没有收到XML的资料串流,难道AS 2.0 03/29 00:51
32F:→ nckumfc:的可以,AS 3.0 不能用这个的方式吗? 03/29 00:52
33F:推 scars:你在浏览器可以开那个aspx吗 swf跟aspx同路径? 03/29 13:42
34F:→ nckumfc:浏览器可以开,swf与aspx放在同一个资料夹下 03/30 01:03
35F:→ nckumfc:到底有什麽是我没注意到的 03/30 01:04