loadVariables跟踪URL

时间:2014-12-17 15:15:45

标签: flash actionscript-2 legacy

我在动作脚本2中有一个传统的Flash应用程序,它使用了一种与我不熟悉的服务器通信的方式。

它使用loadVariables()方法,它是Action Script 2中的全局函数。遗留代码按预期工作,但需要移植,我无法弄清楚它究竟发送了什么。

_root.RemoteHost = "http://www.myserver.com/servlet";
_root.CMD = "INIT";
loadVariables(_root.RemoteHost, _root.data, "POST");

这使得flash生成并执行以下行的HTTP请求:

http://www.myserver.com/servlet<magic>?CMD=INIT

闪光灯产生的神奇部分是什么?我找不到一种方法来获取它作为字符串生成的URL。有没有办法找出它发送的内容?

提前谢谢。

1 个答案:

答案 0 :(得分:0)

我设法创建了一个解决方法,从servlet中获取预期的结果。 因为我知道servlet会安全地忽略它不寻找的任何数据,所以我将Flash跟踪每个可能的变量添加到URL中,并将所有这些变量包含在HTML5应用程序中。

trace("<form action=\"" + _global.g_sRemoteHost + "\"  method=\"POST\">");
trace("<fieldset>");
for(var id:String in _root ) 
{
    var value:Object = _root[id];
    if( typeof(value)!= "function" && typeof(value)!= "movieclip" && typeof(value)!= "object")
        trace( "<input type=\"text\" name=\"" + id + "\" value=\"" + value + "\">");
}
trace( "<input type=\"submit\" value=\"Submit\">" );
trace( "</fieldset>" );
trace( "</form>" );

这是一个可怕的解决方案,但我希望它有助于澄清我的问题。