技术开发 频道

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


(一) 方法
1、login()方法
    这个方法负责将用户名字和密码传递到服务器端进行验证,并返回是否通过验证的信息;必要的话,还可以设置相应的客户端Cookie等信息。这个方法的完整形式如下所示:
Sys.Services.AuthenticationService.login(userName, password, isPersistent, customInfo, redirectUrl,
inCompletedCallback, failedCallback, userContext);
下面表格1详细列出了上面各个参数的含义。  

参数
作用
userName
将被认证的用户名字。
password
将被认证的用户密码。
isPersistent
如果取值为true,则表示要永久保存跨浏览器会话的认证信息;默认值为null。
customInfo
保留字段(暂不使用),必须赋值为null。
redirectUrl
验证成功之后要重定向到的URL;若取值null,则不会发生重定向。默认值为null。
loginCompletedCallback
调用认证服务完成之后的回调函数。注意,不管用户是否通过了服务器端认证,只要认证过程中没有出现诸如超时、异常等问题,都会调用该回调函数。然后,在该回调函数内可以得到用户是否通过了此次验证的信息。默认为null。
failedCallback
调用认证服务失败之后的回调函数。导致失败的原因可能是网络连接超时、或是认证服务内部抛出异常等。若是由于用户提供的用户名和密码不正确而不能通过验证,将不会导致调用认证服务失败,该回调函数将不会被调用。默认为null。
userContext
随本次异步用户认证调用发送至服务器端的用户上下文对象。

其中,loginCompletedCallback和failedCallback是两个重要的回调函数地址参数。
  ①、loginCompletedCallback参数所指定的回调函数的完整形式:
function onLoginCompleted(validCredentials, userContext, methodName)
 validCredentials:一个布尔值,表示用户是否成功通过了验证;
 userContext:在调用login()方法时传递的用户上下文对象;
 methodName:调用方法的方法名。
②、failedCallback参数所指定的回调函数的完整形式如下:
function onAuthenticationFailed(error, userContext, methodName)
 error:导致认证服务失败的异常对象;
 userContext:在调用login()方法时传递的用户上下文对象;
 methodName:调用方法的方法名。

2、logout()方法
logout()方法用来注销当前已经登录的用户。这个方法的完整形式如下所示:
Sys.Services.AuthenticationService.logout( redirectUrl, logoutCompletedCallback, failedCallback, userContext );
其中各个参数的含义如下表2所示。
表2. logout()方法各参数含义
参数
作用
redirectUrl
注销成功之后重定向到的URL,若该参数值为null,则将自动重定向至当前页面。默认值为null。
logoutCompletedCallback
注销用户完成之后的回调函数。
failedCallback
注销用户失败之后的回调函数。导致失败的原因可能是网络连接超时、或是认证服务内部抛出异常等。
userContext
随本次异步用户认证调用发送至服务器端的用户上下文对象。

    注意,在此所列出的四个参数均是可选的。对于logoutCompletedCallback和failedCallback参数,如果为AuthenticationService对象设置了默认值的话,也可以省略。
注销成功之后的回调函数,即logoutCompletedCallback参数所指定的函数的完整的形式如下所示:
function onLogoutCompleted(result, userContext, methodName)
说明:
1. result:目前并没有使用到该参数,始终为null。
2. userContext:在调用logout()方法时传递的用户上下文对象。
3. methodName:调用方法的方法名。
注销用户失败之后的回调函数,即failedCallback参数所指定的函数形式:
function onAuthenticationFailed(error, userContext, methodName)
说明:
1. error:导致认证服务失败的异常对象。
2. userContext:在调用login()方法时传递的用户上下文对象。
3. methodName:调用方法的方法名。 

0
相关文章