网络和通信基础知识

网络和通信简介

当构建更复杂的 ActionScript 应用程序时,通常需要与服务器端脚本进行通信,或者从外部 XML 文件或文本文件加载数据。flash.net 包中包含用于通过 Internet 收发数据的类;例如,从远程 URL 加载内容、与其它 Flash Player 实例进行通信以及连接到远程网站。

而在 ActionScript 3.0,可以使用 URLLoader 和 URLRequest 类加载外部文件。可随后使用特定类来访问数据,具体取决于加载的数据类型。例如,如果将远程内容的格式设置为名称-值对,则可以使用 URLVariables 类来分析服务器结果。或者,如果使用 URLLoader 和 URLRequest 类加载的文件是远程 XML 文档,则可以使用 XML 类的构造函数、XMLDocument 类的构造函数或 XMLDocument.parseXML() 方法来分析 XML 文档。这样,您便可以简化 ActionScript 代码,因为无论是使用 URLVariables、XML 还是某个其它类来分析和处理远程数据,用于加载外部文件的代码都是相同的。

flash.net 包中还包含用于其它类型的远程通信的类。这些类包括 FileReference 类(用于将文件上载到服务器以及从服务器下载文件)、Socket 和 XMLSocket 类(用于通过套接字连接直接与远程计算机进行通信)以及 NetConnection 和 NetStream 类(用于与特定于 Flash 的服务器资源(如 Flash Media Server 和 Flash Remoting 服务器)进行通信以及加载视频文件)。

最后,flash.net 包中包含用于用户本地计算机上通信的类。这些类包括 LocalConnection 类(用于在一台计算机上运行的两个或多个 SWF 文件之间的通信)和 SharedObject 类(用于将数据存储在用户的计算机上,并在以后返回到应用程序时检索这些数据)。

常见网络和通信任务

下表说明了需要从 ActionScript 中执行的与外部通信有关的常见任务;本章中对这些任务进行了介绍:

重要概念和术语

以下参考列表包含将会在本章中遇到的重要术语:

完成本章中的示例

学习本章的过程中,您可能想要测试示例代码清单。本章中有几个代码清单加载外部数据或执行某些其它类型的通信;这些范例通常包括 trace() 函数调用,因此会在“输出”面板中显示示例的运行结果。其它示例则实际执行某一功能,例如将文件上载到服务器。测试这些示例将涉及与 SWF 交互并确认它们执行了所宣称的操作。

这些代码示例分为两类。一些示例列表是在假定代码在独立脚本(例如,附加到 Flash 文档中的关键帧的脚本)中的情况下编写的。要测试这些示例,请执行以下操作:

  1. 创建一个新的 Flash 文档。
  2. 选择时间轴的第 1 帧中的关键帧,并打开“动作”面板。
  3. 将代码清单复制到“脚本”窗格中。
  4. 从主菜单中,选择“控制”>“测试影片”以创建 SWF 文件并测试该示例。

其它示例代码清单编写为类的形式;示例类的预期功能是充当 Flash 文档的文档类。要测试这些示例,请执行以下操作:

  1. 创建一个空的 Flash 文档并将它保存到您的计算机上。
  2. 创建一个新的 ActionScript 文件,并将它保存到 Flash 文档所在的目录中。文件名应与代码清单中的类的名称一致。例如,如果代码清单定义一个名为“UploadTest”的类,则将 ActionScript 文件保存为“UploadTest.as”。
  3. 将代码清单复制到 ActionScript 文件中并保存该文件。
  4. 在 Flash 文档中,单击舞台或夹纸板的空白部分,以激活文档的“属性”检查器。
  5. 在“属性”检查器的“文档类”字段中,输入您从文本中复制的 ActionScript 类的名称。
  6. 使用“控制”>“测试影片”运行程序并测试该示例。

最后,本章中的一些示例涉及与在服务器上运行的程序进行交互。这些示例包括可用来创建测试示例所需的服务器程序的代码;您将需要在 Web 服务器计算机上设置适当的应用程序来测试这些示例。


Flash CS3

 

评论添加到页面后给我发送电子邮件 | 评论报告

当前页: http://livedocs.adobe.com/flash/9.0_cn/main/00000315.html