技术开发 频道

基于ASP.NET AJAX框架实现表单验证编程原理

【IT168技术文档】
一、 简介
    ASP.NET AJAX框架的身份认证服务能够与ASP.NET 2.0的身份认证应用程序服务集成起来,并为其提供客户端的JavaScript调用代理。ASP.NET AJAX客户端部分身份认证代理的相关功能统一由客户端Sys.Services.AuthenticationService类提供。

    Sys.Services.AuthenticationService是一个静态类,定义于MicrosoftAjax.js文件中,通过调用该类中的方法,我们能够间接地使用ASP.NET 2.0内置的MemberShip应用服务来实现用户的身份认证并使用提供的身份认证的相关功能,例如用户登录和注销等。在后台方面,由ASP.NET AJAX框架将负责整个异步通讯的实现细节。通过这种方法,开发者可以沿用ASP.NET 2.0中的标准用户认证系统。

    在本文中,我们将对Sys.Services.AuthenticationService类的公共成员作全面分析,并给出应用注意事项。在下篇中,我们将给出一个具体的应用案例。

二、 AuthenticationService具体成员分析
首先,让我们使用Eilon Lipton编写的ASP.NET AJAX客户端JavaScript类浏览器来浏览这个类的轮廓信息:
internal class Sys.Services._AuthenticationService : Sys.Net.WebServiceProxy {
// Constructor
public Sys.Services._AuthenticationService();
// Fields
public static Object DefaultWebServicePath;
private static Boolean __class;
private static String __typeName;
private Object _authenticated;
private Object _defaultFailedCallback;
private Object _defaultLoginCompletedCallback;
private Object _defaultLogoutCompletedCallback;
private Object _path;
private Object _timeout;
// Properties
public override Object defaultFailedCallback { get; set; };
public Object defaultLoginCompletedCallback { get; set; };
public Object defaultLogoutCompletedCallback { get; set; };
public Object isLoggedIn { get; };
public override Object path { get; set; };
public override Object timeout { get; set; };
// Methods
private static Object __baseType();
private Object _onLoginComplete(Object result, Object context, Object methodName);
private Object _onLoginFailed(Object err, Object context, Object methodName);
private Object _onLogoutComplete(Object result, Object context, Object methodName);
private Object _onLogoutFailed(Object err, Object context, Object methodName);
private Object _setAuthenticated(Object authenticated);
public Object login(Object username, Object password, Object isPersistent, Object customInfo, Object redirectUrl, Object loginCompletedCallback, Object failedCallback, Object userContext);
public Object logout(Object redirectUrl, Object logoutCompletedCallback, Object failedCallback, Object userContext);
}
注意,上面把所有私有成员(带下划线的字段与方法)也一并列出。其实,这个AuthenticationService对象仅提供了两个公用方法:login()和logout(),分别用来实现用户登录和注销,还暴露了几个常用的属性。下面让我们逐一介绍。
0
相关文章