在本例中我们创建了一个名为variables的URLVariables对象,该对象动态创建名为userName和msg的属性,并用表单的输入文本值为其其赋值。接下来,我们创建了一个URLRequest 对象,该对象指定变量要发送到的服务器端脚本的URL。然后,设置URLRequest 对象的method 属性,以便将变量作为HTTP POST请求发送。为了清除服务器脚本生成的缓存数据文件,我们添加了文件头。再下一步我们将URLRequest 对象的 data 属性设置为早先创建的variables对象,这样URLVariables对象就添加到URL 请求了。最后,我们创建 URLLoader实例并调用URLLoader.load() 方法,此方法用于启动该请求。
至于处理服务器的响应,我们是用URLLoader 类的complete事件来处理的。与早期版本ActionScript 中的 XML 和 LoadVars 类非常相似,URLLoader URL 的数据在下载完成之前不可用。
最后值得一提的是,AS3允许通过URLRequestHeader对文件头进行操作,这是一个很重要的提升。
注意:本例所需的后台脚本与使用LoadVars实现Flash与服务器通信那篇文章中用到的一样:脚本的每个名称-值对都创建为URLVariables对象中的一个属性。唯一不一样的是:第一个名称-值不能加&,否则会报错:Error #2101: 传递给URLVariables.decode() 的字符串必须是包含名称/值对的 URL 编码的查询字符串。
点击此处查看最终效果,点击此处下载源文件。附件包含本例所需的各种后台脚本。
资源:
1.URLVariables:http://livedocs.adobe.com/flash/9.0_cn/ActionScriptLangRefV3/flash/net/URLVariables.html
2.URLLoader:http://livedocs.adobe.com/flash/9.0_cn/ActionScriptLangRefV3/flash/net/URLLoader.html
admin#flashas.net (#为@) 联系QQ:
:40777822
浙ICP备06033001号