• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

ASP.NET 2.0 Ajax程序:处理异步调用中的异常

发布: 2008-4-08 13:00 | 作者: ASP.NET 2.0 Ajax程序 | 来源: examda.com | 查看: 114次 | 进入软件测试论坛讨论

领测软件测试网 ——此文章摘自《ASP.NET AJAX程序设计:第II卷(客户端)》定价:55元 特价:41.25元 购买>>

    在传统的Web应用程序中,处理异常相对来说比较简单——即使开发者不作任何处理,浏览器也会默认地将收到的异常信息显示在浏览器中。而对于Ajax应用程序来说,事情却并不那么简单。Ajax程序“异步”的天性加上其后台运行的行为,让用户乃至开发者都很难判断某次对服务器的调用是否顺利完成,浏览器自然也对Ajax程序运行时发生的异常无能为力。

    在本章前面两节中,借助于 ASP.NET AJAX异步通信层的帮助,我们已经能够容易地从客户端向服务器端发起异步HTTP请求——在理想情况下,这自然不会有问题,也足够使用。然而,Web程序在运行中会有很多不确定性,从网络状况的不稳定到开发者的粗心大意,任何一个环节出了问题均会导致某次异步调用以失败告终。

    因此,在ASP.NET AJAX异步通信层的实现中,自然也内建了对异步调用时异常的处理方法。还记得前面曾经介绍过的在客户端调用Web Service代理的语法吗?
    [NameSpace].[ClassName].[MethodName](param1, param2,..., callbackFunction)

    在调用成功的回调函数callbackFunction的后面,我们还可以提供另一个调用失败的回调函数。这样,客户端调用Web Service代理的语法就变为:
    [NameSpace].[ClassName].[MethodName](param1, param2,..., onSucceeded, onFailed)

    注意其中粗体部分新添加的onFailed回调函数,该函数将在本次异步通信出现异常时由ASP.NET AJAX异步通信层调用。而onSucceeded的行为不会受到任何影响,仍将在成功调用后执行。

    onFailed回调函数将接受一个类型为Sys.Net.WebServiceError的参数,表示异常对象。其函数签名将类似如下所示:
    function onFailed(error) {
        // 取得异常信息并处理。
    }

    ASP.NET AJAX的客户端Sys.Net.WebServiceError类型封装了异步请求服务器时可能发生的异常,它提供了若干个只读的属性,提供了对异常信息的详细描述。Sys.Net.WebServ- iceError类型的属性如表3-1所示。

表3-1  Sys.Net.WebServiceError类型的属性

属    性

描    述

exceptionType

获取服务器端异常的具体类型

message

获取详细的异常描述信息

statusCode

获取造成异常的HTTP响应的状态码

stackTrace

获取服务器端异常的栈跟踪信息

timedOut

获取一个布尔值,表示异常是否是由于网络连接超时造成的

文章来源于领测软件测试网 https://www.ltesting.net/

TAG: Ajax程序

41/41234>

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网