包 | flash.events |
类 | public class HTTPStatusEvent |
继承 | HTTPStatusEvent Event Object |
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
在错误或完成事件之前,将始终发送 HTTPStatusEvent 对象。HTTPStatusEvent 对象不一定指示错误条件;它仅反映网络堆栈提供的 HTTP 状态代码(如果有的话)。一些 Flash Player 环境可能无法检测到 HTTP 状态代码;在这些情况下,将总是报告状态代码 0。
在 Flash Player 中,只有一种类型的 HTTPStatus 事件:httpStatus
。在 AIR 运行时中,FileReference、URLLoader 或 URLStream 可以注册侦听 httpResponseStatus
,该事件包括 responseURL
和 responseHeaders
属性。这些属性在 httpStatus
事件中不进行定义。
属性 | 由以下参数定义 | ||
---|---|---|---|
bubbles : Boolean [只读]
表示事件是否为冒泡事件。 | Event | ||
cancelable : Boolean [只读]
表示是否可以阻止与事件相关联的行为。 | Event | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
currentTarget : Object [只读]
当前正在使用某个事件侦听器处理 Event 对象的对象。 | Event | ||
eventPhase : uint [只读]
事件流中的当前阶段。 | Event | ||
redirected : Boolean
表示请求是否已重定向。 | HTTPStatusEvent | ||
responseHeaders : Array
响应以 URLRequestHeader 对象的数组形式返回的响应标头。 | HTTPStatusEvent | ||
responseURL : String
从中返回响应的 URL。 | HTTPStatusEvent | ||
status : int [只读]
由服务器返回的 HTTP 状态代码。 | HTTPStatusEvent | ||
target : Object [只读]
事件目标。 | Event | ||
type : String [只读]
事件的类型。 | Event |
方法 | 由以下参数定义 | ||
---|---|---|---|
HTTPStatusEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, status:int = 0, redirected:Boolean = false)
创建一个 Event 对象,其中包含有关 HTTP 状态事件的特定信息。 | HTTPStatusEvent | ||
[覆盖]
创建 HTTPStatusEvent 对象的副本,并设置每个属性的值以匹配原始属性值。 | HTTPStatusEvent | ||
用于在自定义 ActionScript 3.0 Event 类中实现 toString() 方法的实用程序函数。 | Event | ||
表示对象是否已经定义了指定的属性。 | Object | ||
检查是否已对事件调用 preventDefault() 方法。 | Event | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
如果可以取消事件的默认行为,则取消该行为。 | Event | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
设置循环操作动态属性的可用性。 | Object | ||
防止对事件流中当前节点中和所有后续节点中的事件侦听器进行处理。 | Event | ||
防止对事件流中当前节点的后续节点中的所有事件侦听器进行处理。 | Event | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
[覆盖]
返回一个字符串,其中包含 HTTPStatusEvent 对象的所有属性。 | HTTPStatusEvent | ||
返回指定对象的原始值。 | Object |
常量 | 由以下参数定义 | ||
---|---|---|---|
HTTP_RESPONSE_STATUS : String = "httpResponseStatus" [静态]
与 httpStatus 事件不同,httpResponseStatus 事件在所有响应数据之前传送。 | HTTPStatusEvent | ||
HTTP_STATUS : String = "httpStatus" [静态]
HTTPStatusEvent.HTTP_STATUS 常量定义 httpStatus 事件对象的 type 属性值。 | HTTPStatusEvent |
redirected | 属性 |
responseHeaders | 属性 |
responseURL | 属性 |
status | 属性 |
status:int
[只读] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
由服务器返回的 HTTP 状态代码。例如,值为 404 表示服务器尚未找到所请求 URI 的匹配项。可以在 http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html 上的 HTTP 规范的第 10.4 和 10.5 节中找到 HTTP 状态代码。
如果 Flash Player 或 AIR 无法从服务器获取状态代码或无法与服务器进行通信,则会将默认值 0 传递到您的代码。在任何播放器中都可生成值 0(例如,如果请求的 URL 格式不正确),并且当 Flash Player 插件在以下不将 HTTP 状态代码传递到播放器的浏览器中运行时,值 0 始终由 Flash Player 插件生成:Netscape、Mozilla、Safari、Opera 和用于 Macintosh 的 Internet Explorer。
实现
public function get status():int
HTTPStatusEvent | () | 构造函数 |
public function HTTPStatusEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, status:int = 0, redirected:Boolean = false)
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
创建一个 Event 对象,其中包含有关 HTTP 状态事件的特定信息。将 Event 对象作为参数传递给事件侦听器。
参数type:String — 事件的类型。事件侦听器可以通过继承的 type 属性访问此信息。只有一种类型的 HTTPStatus 事件:HTTPStatusEvent.HTTP_STATUS 。
| |
bubbles:Boolean (default = false ) — 确定 Event 对象是否参与事件流的冒泡阶段。事件侦听器可以通过继承的 bubbles 属性访问此信息。
| |
cancelable:Boolean (default = false ) — 确定是否可以取消 Event 对象。事件侦听器可以通过继承的 cancelable 属性访问此信息。
| |
status:int (default = 0 ) — 数字状态。事件侦听器可以通过 status 属性访问此信息。
| |
redirected:Boolean (default = false ) — 请求是否已重定向。事件侦听器可以通过 redirected 属性访问此信息。
|
相关 API 元素
clone | () | 方法 |
toString | () | 方法 |
HTTP_RESPONSE_STATUS | 常量 |
public static const HTTP_RESPONSE_STATUS:String = "httpResponseStatus"
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0, Flash Lite 4 |
与 httpStatus
事件不同,httpResponseStatus
事件在传送任何响应数据之前传送。此外,httpResponseStatus
事件还包括 responseHeaders
和 responseURL
属性的值(对于 httpStatus
,这些属性未定义)。请注意,在发送任何 complete
或 error
事件之前还将发送 httpResponseStatus
(如果有)。
HTTPStatusEvent.HTTP_RESPONSE_STATUS
常量定义 httpResponseStatus
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
responseURL | 从中返回响应的 URL。 |
responseHeaders | 响应以 URLRequestHeader 对象的数组形式返回的响应标头。 |
status | 由服务器返回的 HTTP 状态代码。 |
redirected | 响应是否为重定向结果。 |
target | 接收 HTTP 状态代码的网络对象。 |
相关 API 元素
HTTP_STATUS | 常量 |
public static const HTTP_STATUS:String = "httpStatus"
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
HTTPStatusEvent.HTTP_STATUS
常量定义 httpStatus
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
status | 由服务器返回的 HTTP 状态代码。 |
target | 接收 HTTP 状态代码的网络对象。 |
相关 API 元素
httpStatusHandler
事件,表示找不到文件。httpStatusHandler
事件由 httpStatusHandler()
进行处理,并仅输出两行事件信息。
注意:
- 您需要通过将“本地播放安全性”设置为“只访问网络”来编译 SWF 文件,以在此例中生成
securityError
事件。 - 您需要一台在 http://www.[yourDomain].com 上运行并侦听端口 80 的服务器,否则您将收到状态代码为 0 的
httpStatusHandler
事件,而不是状态代码为 404 的事件。 - 在 http://www.[yourDomain].com 的根 Web 目录下不能有名为 MissingFile.html 的文件,否则您将收不到正确的
httpStatusHandler
事件。
package { import flash.display.Sprite; import flash.net.URLLoader; import flash.net.URLRequest; import flash.events.HTTPStatusEvent; public class HTTPStatusEventExample extends Sprite { public function HTTPStatusEventExample() { var loader:URLLoader = new URLLoader(); loader.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler); var request:URLRequest = new URLRequest("http://www.[yourDomain].com/MissingFile.html"); loader.load(request); } private function httpStatusHandler(event:HTTPStatusEvent):void { trace("httpStatusHandler: " + event); trace("status: " + event.status); } } }
Tue Jun 12 2018, 11:04 AM Z