remote script文档(转载自微软)(七)

2023-12-05 0 937

文档:检查错误 当您在服务器脚本中用remotescripting调用方法时,可能会遇到多种错误,包括语法错误和运行时间错误,以及调用remotescripting方法时的错误。remotescripting调用机制向您提供了获知调用过程中所出现错误信息的途径。 错误处理程序根据您是进行同步或者异步调用稍微有些不一样。如果您在进行同步调用时导致错误,那么remotescripting机制将在浏览器中显示一条错误消息。错误文字来自于调用对象的message属性。有关详细信息,请参阅如下的“RemoteScripting调用故障诊断”。 不过,如果您产生导致一个错误的异步调用,那么您可以通过指定一个错误回调函数捕获该错误,该回调函数的调用在很大程度上和普通回调函数有相似之处。 捕获异步调用中产生的错误 您可以指定自己异步remotescripting调用中的错误回调函数名。由于您必须传递该回调函数的函数指针,因此对于异步方法调用来说,您必须使用javascript。如果您已经创建了对服务器页的对象引用,那么可以用第一个语法示例。否则可以用第二个语法示例。 callObject=ASPObject.methodName(p1,p2[,…], callbackFunction,errorCallbackFunction,context) callobject=RSExecute(url,methodName,p1,p2[,…], callbackFunction,errorCallbackFunction,context) 有关产生对服务器方法异步调用的详细信息,请参阅异步调用RemoteScripting方法。 不管您进行同步还是异步调用,都可以得到关于错误条件的信息,方法是测试调用对象的属性。如果用户指定了错误回调函数,那么调用对象就被作为参数传递,就象普通回调函数参数传递一样。特别是下面的属性提供了错误信息: status如果远程调用失败则包含-1。 data包含服务器返回的XML格式的粗信息。这是调试的最好信息源,因为它包含了错误消息的完整文本以及服务器生成的其他消息。 message包含remotescripting代理过程生成的错误消息信息(如果有的话)。message中的错误消息不必要和data属性中的一样。例如,如果ASP页包含一条语法错误,那么关于该错误的详细消息将出现在data属性中,但消息属性将只包含这样一条消息──它指示用户不能调用ASP页上的方法。 下面的脚本示例了客户脚本中的一个错误回调函数。第一个脚本产生一个remotescripting调用,并指明错误回调函数。第二个脚本是错误回调函数本身。错误回调函数并不显式地对调用对象status属性值进行测试,因为该函数仅在调用失败时才被调用。 <SCRIPTLANGUAGE=\”javascript\”for=\”btnSquare\”event=\”onclick\”> rsMath=RSGetASPObject(\”rsadd.asp\”); number1=txt1.value; context=\”squaring\”; co=rsMath.square(number1,showResults,showErrors,context); functionshowErrors(co){ //转储粗数据 msg=\”Therawdatareturnedbytheremotemethodcallis\” msg=msg+co.data alert(msg); //显示友好信息 msg=\”Thefollowingerroroccurredduringthe\” msg=msg+co.context msg=msg+\”remotescriptingcall:\\n\” msg=msg+co.message alert(msg); } </SCRIPT> RemoteScripting调用故障诊断 找到某个remotescripting调用中的确切错误源并不总是一件容易的事情,因为remotescripting不仅涉及到客户而且涉及到服务器上的多个文件。不过,某些类型的错误属于一般性错误,而且容易发现。另外,用户可以用remotescripting机制的错误捕获程序获得调用过程中所出现错误的详细信息。 在某些情况下,用户不能用remotescripting进行任何处理,因为尚未对之进行正确的初始化。下表列出了典型的初始化错误及其可能的出错缘由。 症状可能错因 Remotescripting不起作用;客户页源仅包含<APPLET>标记。RSEnableRemoteScripting 调用不在文档主体内。请参阅使得客户页内的RemoteScripting有效。 Remotescripting不起作用;所有调用失败。ASP页未被调用。使用http://协议(而不是file://)。 客户端错误消息,比如当试图调用remotescripting方法时,出现“未定义\’MSRS\’”消息。试图进行远程调用之前,未能成功调用RSEnableRemoteScripting方法。 客户端错误消息“对象不支持该属性或者方法,”特别显示出和.HTM文件不匹配的行号。找不到代理对象(Rsproxy.class),或者RSEnableRemoteScripting方法中传递的是无效URL。 客户端错误消息“创建文件的ASP对象失败”。RSGetASPObject调用中传递的是无效URL。请参阅作为对象引用ASP页。 如果错误位于包含远程调用方法的ASP页中,或者如果错误出现在对某个远程方法的调用过程中,那么用户可以在某个错误回调函数中捕获该错误,而且用户可以从调用对象的data和message属性中获得关于错误的信息。 下表列出了用户可以用错误回调函数捕获的典型问题以及message和data属性中的值。在多数情况下,message属性返回一般性信息,而data属性则包含关于错误的详细信息。 注意数据属性包含一定数目的XML标记以及和调用有关的其他信息。下表列出了出现在属性值中的一个字符串。 问题消息值数据值 RSExecute方法中ASP页的无效URL。请参阅同步调用RemoteScripting方法和异步调用RemoteScripting方法不同的,包括用户试图调用的页名。(null) ASP文件到Rs.asp的路径错误。请参阅使得服务器页中的RemoteScripting有效。“调用的页不支持remotescripting。”“未找到包括文件。” ASP文件中的语法或者运行时间错误。“调用的页不支持remotescripting。”和错误有关的细节,包括行号。 试图调用不存在的方法。“不是公用函数。”“不是公用函数。” ASP构造函数引用了未出现在ASP文件中的函数。请参阅使得服务器页中的RemoteScripting有效“调用的页不支持remotescripting。”“functionName未定义。”

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悠久资源 远程脚本 remote script文档(转载自微软)(七) https://www.u-9.cn/jiaoben/yuancheng/100617.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务