(仅限 AIR)
flash.events
public class DRMAuthenticateEvent
继承DRMAuthenticateEvent Inheritance Event Inheritance Object

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

在 NetStream 对象尝试播放使用数字权限管理 (DRM) 加密的内容(需要用户凭据以进行身份验证)时调度。

DRMAuthenticateEvent 处理函数负责收集所需的凭据(如用户名、密码和类型)并将值传递给 NetStream.setDRMAuthenticationCredentials() 方法以进行身份验证。每个 AIR 应用程序都必须提供用于获取用户凭据的机制。例如,应用程序可以为用户提供一个简单的用户界面以输入用户名和密码值,以及类型值(可选)。

如果用户身份验证失败,则应用程序将重新尝试身份验证并为 NetStream 对象调度一个新的 DRMAuthenticateEvent 事件。

查看示例

另请参见

flash.net.NetStream.setDRMAuthenticationCredentials()
DRMAuthenticateEvent.DRM_AUTHENTICATE
flash.net.drm.DRMManager


公共属性
 属性定义方
  AIR-only authenticationType : String
[只读 (read-only)] 指示提供的凭据是用于针对 Flash Media Rights Management Server (FMRMS) 的验证,还是用于针对代理服务器的验证。
DRMAuthenticateEvent
 Inheritedbubbles : Boolean
[只读 (read-only)] 指示事件是否为冒泡事件。
Event
 Inheritedcancelable : Boolean
[只读 (read-only)] 指示是否可以阻止与事件相关联的行为。
Event
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
 InheritedcurrentTarget : Object
[只读 (read-only)] 当前正在使用某个事件侦听器处理 Event 对象的对象。
Event
 InheritedeventPhase : uint
[只读 (read-only)] 事件流中的当前阶段。
Event
  AIR-only header : String
[只读 (read-only)] 服务器提供的加密内容文件标头。
DRMAuthenticateEvent
  AIR-only netstream : NetStream
[只读 (read-only)] 启动此事件的 NetStream 对象。
DRMAuthenticateEvent
  AIR-only passwordPrompt : String
[只读 (read-only)] 服务器提供的密码凭据提示。
DRMAuthenticateEvent
 Inheritedprototype : Object
[静态] 对类或函数对象的原型对象的引用。
Object
 Inheritedtarget : Object
[只读 (read-only)] 事件目标。
Event
 Inheritedtype : String
[只读 (read-only)] 事件的类型。
Event
  AIR-only urlPrompt : String
[只读 (read-only)] 服务器提供的 URL 字符串提示。
DRMAuthenticateEvent
  AIR-only usernamePrompt : String
[只读 (read-only)] 服务器提供的用户名凭据提示。
DRMAuthenticateEvent
公共方法
 方法定义方
  
AIR-only DRMAuthenticateEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, header:String = "", userPrompt:String = "", passPrompt:String = "", urlPrompt:String = "", authenticationType:String = "", netstream:NetStream = null)
创建一个 Event 对象,其中包含有关 DRM 验证事件的特定信息。
DRMAuthenticateEvent
  
创建 DRMAuthenticateEvent 对象的副本,并将每个属性的值设置为与原始属性值相匹配。
DRMAuthenticateEvent
 Inherited
formatToString(className:String, ... arguments):String
用于在自定义 ActionScript 3.0 Event 类中实现 toString() 方法的实用程序函数。
Event
 Inherited
指示对象是否已经定义了指定的属性。
Object
 Inherited
检查是否已对事件调用 preventDefault() 方法。
Event
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
 Inherited
如果可以取消事件的默认行为,则取消该行为。
Event
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
 Inherited
设置循环操作动态属性的可用性。
Object
 Inherited
防止对事件流中当前节点中和所有后续节点中的事件侦听器进行处理。
Event
 Inherited
防止对事件流中当前节点的后续节点中的所有事件侦听器进行处理。
Event
  
返回一个字符串,其中包含 DRMAuthenticateEvent 对象的所有属性。
DRMAuthenticateEvent
 Inherited
返回指定对象的原始值。
Object
公共常量
 常量定义方
 InheritedACTIVATE : String = "activate"
[静态] ACTIVATE 常量定义 activate 事件对象的 type 属性的值。
Event
 InheritedADDED : String = "added"
[静态] Event.ADDED 常量定义 added 事件对象的 type 属性值。
Event
 InheritedADDED_TO_STAGE : String = "addedToStage"
[静态] Event.ADDED_TO_STAGE 常量定义 addedToStage 事件对象的 type 属性值。
Event
  AIR-only AUTHENTICATION_TYPE_DRM : String = "drm"
[静态] DRMAuthenticateEvent.AUTHENTICATION_TYPE_DRM 常量定义 DRMAuthenticateEvent 对象的 authenticationType 属性的值。
DRMAuthenticateEvent
  AIR-only AUTHENTICATION_TYPE_PROXY : String = "proxy"
[静态] DRMAuthenticateEvent.AUTHENTICATION_TYPE_PROXY 常量定义 DRMAuthenticateEvent 对象的 authenticationType 属性的值。
DRMAuthenticateEvent
 InheritedCANCEL : String = "cancel"
[静态] Event.CANCEL 常量定义 cancel 事件对象的 type 属性的值。
Event
 InheritedCHANGE : String = "change"
[静态] Event.CHANGE 常量定义 change 事件对象的 type 属性值。
Event
 InheritedCLEAR : String = "clear"
[静态] Event.CLEAR 常量定义 clear 事件对象的 type 属性的值。
Event
 InheritedCLOSE : String = "close"
[静态] Event.CLOSE 常量定义 close 事件对象的 type 属性的值。
Event
 InheritedAIR-only CLOSING : String = "closing"
[静态] Event.CLOSING 常量定义 closing 事件对象的 type 属性值。
Event
 InheritedCOMPLETE : String = "complete"
[静态] Event.COMPLETE 常量定义 complete 事件对象的 type 属性值。
Event
 InheritedCONNECT : String = "connect"
[静态] Event.CONNECT 常量定义 connect 事件对象的 type 属性值。
Event
 InheritedCOPY : String = "copy"
[静态] 定义 copy 事件对象的 type 属性值。
Event
 InheritedCUT : String = "cut"
[静态] 定义 cut 事件对象的 type 属性值。
Event
 InheritedDEACTIVATE : String = "deactivate"
[静态] Event.DEACTIVATE 常量定义 deactivate 事件对象的 type 属性值。
Event
 InheritedDISPLAYING : String = "displaying"
[静态] Event.DISPLAYING 常量定义 displaying 事件对象的 type 属性值。
Event
  AIR-only DRM_AUTHENTICATE : String = "drmAuthenticate"
[静态] DRMAuthenticateEvent.DRM_AUTHENTICATE 常量定义 DRMAuthenticateEvent 对象的 type 属性的值。
DRMAuthenticateEvent
 InheritedENTER_FRAME : String = "enterFrame"
[静态] Event.ENTER_FRAME 常量定义 enterFrame 事件对象的 type 属性值。
Event
 InheritedEXIT_FRAME : String = "exitFrame"
[静态] Event.EXIT_FRAME 常量定义 exitFrame 事件对象的 type 属性的值。
Event
 InheritedAIR-only EXITING : String = "exiting"
[静态] Event.EXITING 常量定义 exiting 事件对象的 type 属性值。
Event
 InheritedFRAME_CONSTRUCTED : String = "frameConstructed"
[静态] Event.FRAME_CONSTRUCTED 常量定义 frameConstructed 事件对象的 type 属性的值。
Event
 InheritedFULLSCREEN : String = "fullScreen"
[静态] Event.FULL_SCREEN 常量定义 fullScreen 事件对象的 type 属性值。
Event
 InheritedAIR-only HTML_BOUNDS_CHANGE : String = "htmlBoundsChange"
[静态] Event.HTML_BOUNDS_CHANGE 常量定义 htmlBoundsChange 事件对象的 type 属性值。
Event
 InheritedAIR-only HTML_DOM_INITIALIZE : String = "htmlDOMInitialize"
[静态] Event.HTML_DOM_INITIALIZE 常量定义 htmlDOMInitialize 事件对象的 type 属性值。
Event
 InheritedAIR-only HTML_RENDER : String = "htmlRender"
[静态] Event.HTML_RENDER 常量定义 htmlRender 事件对象的 type 属性值。
Event
 InheritedID3 : String = "id3"
[静态] Event.ID3 常量定义 id3 事件对象的 type 属性值。
Event
 InheritedINIT : String = "init"
[静态] Event.INIT 常量定义 init 事件对象的 type 属性值。
Event
 InheritedAIR-only LOCATION_CHANGE : String = "locationChange"
[静态] Event.LOCATION_CHANGE 常量定义 locationChange 事件对象的 type 属性值。
Event
 InheritedMOUSE_LEAVE : String = "mouseLeave"
[静态] Event.MOUSE_LEAVE 常量定义 mouseLeave 事件对象的 type 属性值。
Event
 InheritedAIR-only NETWORK_CHANGE : String = "networkChange"
[静态] Event.NETWORK_CHANGE 常量定义 networkChange 事件对象的 type 属性值。
Event
 InheritedOPEN : String = "open"
[静态] Event.OPEN 常量用于定义 open 事件对象的 type 属性值。
Event
 InheritedPASTE : String = "paste"
[静态] Event.PASTE 常量定义 paste 事件对象的 type 属性的值。
Event
 InheritedREMOVED : String = "removed"
[静态] Event.REMOVED 常量定义 removed 事件对象的 type 属性值。
Event
 InheritedREMOVED_FROM_STAGE : String = "removedFromStage"
[静态] Event.REMOVED_FROM_STAGE 常量定义 removedFromStage 事件对象的 type 属性值。
Event
 InheritedRENDER : String = "render"
[静态] Event.RENDER 常量定义 render 事件对象的 type 属性的值。
Event
 InheritedRESIZE : String = "resize"
[静态] Event.RESIZE 常量定义 resize 事件对象的 type 属性的值。
Event
 InheritedSCROLL : String = "scroll"
[静态] Event.SCROLL 常量定义 scroll 事件对象的 type 属性值。
Event
 InheritedSELECT : String = "select"
[静态] Event.SELECT 常量定义 select 事件对象的 type 属性的值。
Event
 InheritedSELECT_ALL : String = "selectAll"
[静态] Event.SELECT_ALL 常量定义 selectAll 事件对象的 type 属性的值。
Event
 InheritedSOUND_COMPLETE : String = "soundComplete"
[静态] Event.SOUND_COMPLETE 常量定义 soundComplete 事件对象的 type 属性值。
Event
 InheritedTAB_CHILDREN_CHANGE : String = "tabChildrenChange"
[静态] Event.TAB_CHILDREN_CHANGE 常量定义 tabChildrenChange 事件对象的 type 属性值。
Event
 InheritedTAB_ENABLED_CHANGE : String = "tabEnabledChange"
[静态] Event.TAB_ENABLED_CHANGE 常量定义 tabEnabledChange 事件对象的 type 属性值。
Event
 InheritedTAB_INDEX_CHANGE : String = "tabIndexChange"
[静态] Event.TAB_INDEX_CHANGE 常量定义 tabIndexChange 事件对象的 type 属性值。
Event
 InheritedUNLOAD : String = "unload"
[静态] Event.UNLOAD 常量定义 unload 事件对象的 type 属性值。
Event
 InheritedAIR-only USER_IDLE : String = "userIdle"
[静态] Event.USER_IDLE 常量定义 userIdle 事件对象的 type 属性值。
Event
 InheritedAIR-only USER_PRESENT : String = "userPresent"
[静态] Event.USER_PRESENT 常量定义 userPresent 事件对象的 type 属性值。
Event
属性详细信息
AIR-only authenticationType属性
authenticationType:String  [只读 (read-only)]

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

指示提供的凭据是用于针对 Flash Media Rights Management Server (FMRMS) 的验证,还是用于针对代理服务器的验证。例如,“proxy”选项允许应用程序针对代理服务器进行身份验证(如果企业要求用户通过此步骤后才能访问 Internet)。除非使用匿名身份验证,否则在代理身份验证之后,用户仍需要针对 FMRMS 进行身份验证才能获取凭证并播放内容。您可以再次与“drm”选项一起使用 setDRMAuthenticationcredentials() 以针对 FMRMS 进行身份验证。



实现
    public function get authenticationType():String
AIR-only header属性 
header:String  [只读 (read-only)]

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

服务器提供的加密内容文件标头。它包含有关加密内容的上下文的信息。



实现
    public function get header():String
AIR-only netstream属性 
netstream:NetStream  [只读 (read-only)]

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

启动此事件的 NetStream 对象。



实现
    public function get netstream():NetStream
AIR-only passwordPrompt属性 
passwordPrompt:String  [只读 (read-only)]

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

服务器提供的密码凭据提示。该字符串可以包括所需密码的类型说明。



实现
    public function get passwordPrompt():String
AIR-only urlPrompt属性 
urlPrompt:String  [只读 (read-only)]

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

服务器提供的 URL 字符串提示。该字符串可以提供要将用户名和密码发送到的位置。



实现
    public function get urlPrompt():String
AIR-only usernamePrompt属性 
usernamePrompt:String  [只读 (read-only)]

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

服务器提供的用户名凭据提示。该字符串可以包括所需用户名的类型说明。例如,内容提供程序可能需要电子邮件地址作为用户名。



实现
    public function get usernamePrompt():String
构造函数详细信息
AIR-only DRMAuthenticateEvent()构造函数
public function DRMAuthenticateEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, header:String = "", userPrompt:String = "", passPrompt:String = "", urlPrompt:String = "", authenticationType:String = "", netstream:NetStream = null)

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

创建一个 Event 对象,其中包含有关 DRM 验证事件的特定信息。将 Event 对象作为参数传递给事件侦听器。

参数
type:String — 事件的类型。事件侦听器可以通过继承的 type 属性访问此信息。只有一种类型的 DRMAuthenticate 事件:DRMAuthenticateEvent.DRM_AUTHENTICATE
 
bubbles:Boolean (default = false) — 确定 Event 对象是否参与事件流的冒泡阶段。事件侦听器可以通过继承的 bubbles 属性访问此信息。
 
cancelable:Boolean (default = false) — 确定是否可以取消 Event 对象。事件侦听器可以通过继承的 cancelable 属性访问此信息。
 
header:String (default = "") — 服务器提供的加密内容文件标头。
 
userPrompt:String (default = "") — 服务器提供的用户名凭据提示。
 
passPrompt:String (default = "") — 服务器提供的密码凭据提示。
 
urlPrompt:String (default = "") — 服务器提供的要显示的 URL 提示。
 
authenticationType:String (default = "") — 指示提供的凭据是用于针对 Flash Media Rights Management Server (FMRMS) 的身份验证,还是用于针对代理服务器的身体验证。
 
netstream:NetStream (default = null) — 启动此事件的 NetStream 对象。
方法详细信息
AIR-only clone()方法
override public function clone():Event

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

创建 DRMAuthenticateEvent 对象的副本,并将每个属性的值设置为与原始属性值相匹配。

返回
Event — 其属性值与原始属性值匹配的新 DRMAuthenticateEvent 对象。
AIR-only toString()方法 
override public function toString():String

运行时版本: AIR 1.0

返回一个字符串,其中包含 DRMAuthenticateEvent 对象的所有属性。字符串的格式如下:

[DRMAuthenticateEvent type=value bubbles=value cancelable=value eventPhase=value header=value usernamePrompt=value passwordPrompt=value urlPrompt=value] authenticationType=value

返回
String — 一个字符串,其中包含 DRMAuthenticateEvent 对象的所有属性。
常量详细信息
AIR-only AUTHENTICATION_TYPE_DRM常量
public static const AUTHENTICATION_TYPE_DRM:String = "drm"

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

DRMAuthenticateEvent.AUTHENTICATION_TYPE_DRM 常量定义 DRMAuthenticateEvent 对象的 authenticationType 属性的值。

此事件具有以下属性:

属性
authenticationType 指示提供的凭据是用于针对 Flash Media Rights Management Server (FMRMS) 的身份验证,还是用于针对代理服务器的身体验证。
bubbles false
cancelable false;没有要取消的默认行为。
header 服务器提供的加密内容文件标头。
netstream 启动此事件的 NetStream 对象。
passwordPrompt 服务器提供的密码凭据提示。
target NetStream 对象。
urlPrompt 服务器提供的要显示的 URL 提示。
usernamePrompt 服务器提供的用户名凭据提示。

另请参见

AIR-only AUTHENTICATION_TYPE_PROXY常量 
public static const AUTHENTICATION_TYPE_PROXY:String = "proxy"

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

DRMAuthenticateEvent.AUTHENTICATION_TYPE_PROXY 常量定义 DRMAuthenticateEvent 对象的 authenticationType 属性的值。

此事件具有以下属性:

属性
authenticationType 指示提供的凭据是用于针对 Flash Media Rights Management Server (FMRMS) 的身份验证,还是用于针对代理服务器的身体验证。
bubbles false
cancelable false;没有要取消的默认行为。
header 服务器提供的加密内容文件标头。
netstream 启动此事件的 NetStream 对象。
passwordPrompt 服务器提供的密码凭据提示。
target NetStream 对象。
urlPrompt 服务器提供的要显示的 URL 提示。
usernamePrompt 服务器提供的用户名凭据提示。

另请参见

AIR-only DRM_AUTHENTICATE常量 
public static const DRM_AUTHENTICATE:String = "drmAuthenticate"

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

DRMAuthenticateEvent.DRM_AUTHENTICATE 常量定义 DRMAuthenticateEvent 对象的 type 属性的值。

此事件具有以下属性:

属性
authenticationType 指示提供的凭据是用于针对 Flash Media Rights Management Server (FMRMS) 的身份验证,还是用于针对代理服务器的身体验证。
bubbles false
cancelable false 指示没有要取消的默认行为。
header 服务器提供的加密内容文件标头。
netstream 启动此事件的 NetStream 对象。
passwordPrompt 服务器提供的密码凭据提示。
target NetStream 对象。
urlPrompt 服务器提供的要显示的 URL 提示。
usernamePrompt 服务器提供的用户名凭据提示。

另请参见

示例 如何使用示例
DRMAuthenticateEventExample.as

package
{
    import flash.display.Sprite;
    import flash.events.AsyncErrorEvent;
    import flash.events.NetStatusEvent;
    import flash.events.DRMAuthenticateEvent;
    import flash.media.Video;
    import flash.net.NetConnection;
    import flash.net.NetStream;

    public class DRMAuthenticateEventExample extends Sprite
    {
        var videoURL:String = "Video.flv";
        var videoConnection:NetConnection;
        var videoStream:NetStream;
        var video:Video = new Video();            

        public function DRMAuthenticateEventExample()
        {
            videoConnection = new NetConnection();
            videoConnection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
            videoConnection.connect(null);
        }

        private function connectStream():void {
            videoStream = new NetStream(videoConnection);
            videoStream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
            videoStream.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
            videoStream.addEventListener(DRMAuthenticateEvent.DRM_AUTHENTICATE, drmAuthenticateEventHandler);
            video.attachNetStream(videoStream);
            videoStream.play(videoURL);
            addChild(video);
        }

        private function netStatusHandler(event:NetStatusEvent):void {
            switch (event.info.code) {
                case "NetConnection.Connect.Success":
                    connectStream();
                    break;
                case "NetStream.Play.StreamNotFound":
                    trace("Unable to locate video: " + videoURL);
                    break;
            }
        }

        private function asyncErrorHandler(event:AsyncErrorEvent):void {
            // ignore AsyncErrorEvent events.
        }

         private function drmAuthenticateEventHandler(event:DRMAuthenticateEvent):void {
            videoStream.setDRMAuthenticationCredentials("User", "password", "drm");
        }
     }
}