flash.net 包中具有包级函数,可用于打开新的浏览器窗口,向服务器发送 URL 请求以及处理类别名。
公共 函数
 函数定义方
  
查找一个类,这个类先前具有一个通过调用 registerClassAlias() 方法进行注册的别名。
flash.net
  
navigateToURL(request:URLRequest, window:String = null):void
在包含 Flash Player 容器的应用程序(通常是一个浏览器)中,打开或替换一个窗口。
flash.net
  
registerClassAlias(aliasName:String, classObject:Class):void
当以 Action Message Format (AMF) 对一个对象进行编码时,保留该对象的类(类型)。
flash.net
  
向服务器发送一个 URL 请求,但忽略任何响应。
flash.net
函数详细信息
getClassByAlias()函数
public function getClassByAlias(aliasName:String):Class

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

查找一个类,这个类先前具有一个通过调用 registerClassAlias() 方法进行注册的别名。

此方法不与 flash.utils.getDefinitionByName() 方法进行交互。

参数

aliasName:String — 要查找的别名。

返回
Class — 与给定别名相关联的类。 如果未找到,将引发异常。

引发
ReferenceError — 未注册别名。

另请参见

navigateToURL()函数 
public function navigateToURL(request:URLRequest, window:String = null):void

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

在包含 Flash Player 容器的应用程序(通常是一个浏览器)中,打开或替换一个窗口。

安全注释:对于浏览器中运行的本地 内容,只有 SWF 文件和所包含的网页(如果有)位于受信任的本地安全沙箱中时,才允许调用指定 "javascript:" 伪协议的 navigateToURL() 函数(例如:navigateToURL("javascript:someFunction()"))。 有关详细信息,请参阅以下部分:

参数

request:URLRequest — URLRequest 对象,指定要导航到哪个 URL。
 
window:String (default = null) — 浏览器窗口或 HTML 帧,其中显示 request 参数指示的文档。 可以输入某个特定窗口的名称,或使用以下值之一:
  • "_self" 指定当前窗口中的当前帧。
  • "_blank" 指定一个新窗口。
  • "_parent" 指定当前帧的父级。
  • "_top" 指定当前窗口中的顶级帧。

如果没有为此参数指定值,将创建一个新的空窗口。 在独立播放器中,可以指定新的 ("_blank") 窗口,也可以指定已命名的窗口。 其它值不适用。

安全注释:当运行在只能与本地文件系统内容交互沙箱中的 SWF 文件中的代码调用 navigateToURL() 函数,并为 window 参数指定自定义窗口名称时,该窗口名称会转换为一个随机名称。 该名称的格式为 "_flashXXXXXXXX",其中每个 X 均代表一个随机的十六进制数字。 在同一会话中(直到您关闭包含浏览器窗口),如果您再次调用该函数并为 window 参数指定同一名称,将使用同一个随机字符串。


引发
SecurityError — 在以下情况下,将引发此错误:
  • 本地不受信任的 SWF 文件可能无法与 Internet 进行通信。 要避免这种情况,可将此 SWF 文件重新分类为只能与远程内容交互或受信任。
  • 导航操作试图评估伪 URL 的脚本编写,但包含文档(通常是浏览器中的一个 HTML 文档)来自您不具有访问权限的沙箱。 要避免这种情况,可以在包含文档中指定 allowScriptAccess="always"
  • 如果 SWF 文件包含在已将 allowScriptAccess 设置为 "none""sameDomain" 的 HTML 页面中,而此 HTML 文件与 SWF 文件的域不匹配,将无法导航特殊窗口 "_self""_top""_parent"
  • 不能导航具有非默认名称的窗口,非默认名称来自位于 local-with-filesystem 沙箱中的 SWF 文件。

另请参见


示例
如何使用示例

下例在一个新的浏览器窗口中打开 URL http://www.adobe.com,并将在 URLVariables 对象中所捕获的用户会话数据传递给 Web 服务器。
package {
    import flash.display.Sprite;
    import flash.net.navigateToURL;
    import flash.net.URLRequest;
    import flash.net.URLVariables;

    public class NavigateToURLExample extends Sprite {

        public function NavigateToURLExample() {
            var url:String = "http://www.adobe.com";
            var variables:URLVariables = new URLVariables();
            variables.exampleSessionId = new Date().getTime();
            variables.exampleUserLabel = "Your Name";
            var request:URLRequest = new URLRequest(url);
            request.data = variables;
            try {            
                navigateToURL(request);
            }
            catch (e:Error) {
                // handle error here
            }
        }
    }
}
registerClassAlias()函数 
public function registerClassAlias(aliasName:String, classObject:Class):void

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

当以 Action Message Format (AMF) 对一个对象进行编码时,保留该对象的类(类型)。 将对象编码为 AMF 时,该函数将保存该对象的类的别名,以便在解码对象时可以恢复该类。 如果编码上下文没有为对象的类注册别名,该对象将被编码为一个匿名对象。 同样,如果解码上下文注册了不同的别名,将为解码后的数据创建一个匿名对象。

LocalConnection、ByteArray、SharedObject、NetConnection 及 NetStream 均为将对象编码为 AMF 的类的示例。

编码和解码上下文不必对别名使用相同的类。它们可以主动地改变类,条件是目标类包含源类序列化的所有成员。

参数

aliasName:String — 要使用的别名。
 
classObject:Class — 与给定别名相关联的类。


引发
TypeError — 如果任一个参数为 null

另请参见


示例
如何使用示例

此示例使用 registerClassAlias() 函数为 ExampleClass 注册一个别名 ( com.example.eg )。 由于为类注册了别名,因此可以将对象作为 ExampleClass 的实例反序列化,且代码将输出 true。 如果删除 registerClassAlias() 调用,则代码将输出 false
package {
    import flash.display.Sprite;
    import flash.net.registerClassAlias;
    import flash.utils.ByteArray;

    public class RegisterClassAliasExample extends Sprite {
        public function RegisterClassAliasExample() {
            registerClassAlias("com.example.eg", ExampleClass);
            var eg1:ExampleClass = new ExampleClass();
            var ba:ByteArray = new ByteArray();
            ba.writeObject(eg1);
            ba.position = 0;
            var eg2:* = ba.readObject();
            trace(eg2 is ExampleClass); // true
        }
    }
}

class ExampleClass {}
sendToURL()函数 
public function sendToURL(request:URLRequest):void

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

向服务器发送一个 URL 请求,但忽略任何响应。

若要检查服务器响应,请改为使用 URLLoader.load() 方法。

在 Flash Player 9 及更高版本中,可以在包含 SWF 内容的 HTML 页中设置 objectembed 标签的 allowNetworking 参数来防止 SWF 文件使用此方法。

有关详细信息,请参阅 http://www.adobe.com/go/fp9_0_security_cn 上的《 Flash Player 9 的安全性》白皮书。

参数

request:URLRequest — URLRequest 对象,指定要将数据发送到哪个 URL。


引发
SecurityError — 本地不受信任的 SWF 文件无法与 Internet 通信。 要避免这种情况,可将此 SWF 文件重新分类为只能与远程内容交互或受信任。

另请参见


示例
如何使用示例

下例将在 URLVariables 对象中捕获的用户会话数据传递到位于 http://www.yourDomain.com/application.jsp 的应用程序。
 package {
    import flash.display.Sprite;
    import flash.net.URLRequest;
    import flash.net.URLVariables;
    import flash.net.sendToURL;

    public class SendToURLExample extends Sprite {

        public function SendToURLExample() {
            var url:String = "http://www.yourDomain.com/application.jsp";
            var variables:URLVariables = new URLVariables();
            variables.sessionId = new Date().getTime();
            variables.userLabel = "Your Name";

            var request:URLRequest = new URLRequest(url);
            request.data = variables;
            trace("sendToURL: " + request.url + "?" + request.data);
            try {
                sendToURL(request);
            }
            catch (e:Error) {
                // handle error here
            }
        }
    }
}

 

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

当前页: http://livedocs.adobe.com/flash/9.0_cn/ActionScriptLangRefV3/flash/net/package.html