不错的remote script文档(转载自微软)(三)

2023-12-05 0 847

文档:使RemoteScripting在服务器页中有效 除了对客户页进行配置以便于调用远程脚本外,您还必须对自己的服务器页进行配置,以便于对它们进行接收。其做法包括下面这些步骤: 包含remotescripting服务器库,并对其进行初始化。 编写客户页能调用的函数或者例程。 将自己的函数和例程显露为方法。 缺省的情况是,客户脚本所调用的某个ASP页并不显示在浏览器中──而是简单地在服务器上执行并将结果送到客户端。因此,作为规则,您无需在ASP页中包括进任何HTML文本,而只需脚本。不过,还是有可能在某个ASP页上调用包括HTML文本的方法并作正常显示的,只要您初始化了remotescripting服务器库,并用下面描述的技巧显露页的方法。 包括并初始化remotescripting服务器库 创建服务器端引用Rs.asp文件的INCLUDE语句,如下例所示: <!–#INCLUDEFILE=\”../_ScriptLibrary/RS.ASP\”–> 确保为Rs.asp文件指定正确路径。INCLUDE语句可以出现在用户文件的任何位置。 将一个调用插入到RSDispatch方法中,当您从客户脚本调用服务器脚本时,可用该方法找到正确过程。该调用可能看起来如下所示: <%RSDispatch%> RSDispatch调用必须是运行在该页上的第一个服务器脚本。按惯例,典型做法是将其放到文件头部。 在合适的初始化动作中,创建用户将从客户脚本中作为方法调用的函数或者例程。您可以用任何脚本语言书写过程。过程可以接受任意数目的参数,但参数只可以为字符串、数字、日期,或者其他简单数据类型──客户不能将结构化数据(例如,对象或者数组)作为参数。 注意当您将参数从客户脚本传递到服务器脚本时,它们即被转换为字符串。如果用户期望自己的服务器方法中有不同数据类型,可以在方法脚本内部转换之。 在服务器脚本中创建了过程后,您必须将它们作为方法显露出来。为了达到该目的,您可以创建一个javascript公共描述对象,并列出用户希望显露的方法。 显露方法 创建一个public_description对象,该对象为您的方法指定构造函数。下面的示例命名构造函数为MyServerMethods: <SCRIPTLANGUAGE=\”javascript\”> varpublic_description=newMyServerMethods(); 创建您在public_description对象中指定的构造函数。在构造函数内部,指定用户希望显露的方法名,以及它们相应的函数或者例程名。用户所使用的语法取决于用户是在javascript中还是在VBScript中创建自己的方法。可使用下面的语法: functionconstructor(){ this.methodName=functionName//对于javascript方法来说 //对于用VBScript书写的方法,使用下面的语法 this.methodName=Function(\’p1\’,\’p2\’,\’returnfunctionName(p1,p2)\’) } 注意javascript是大小写敏感的,因此用户必须根据约定正确大写。 其中: methodName将被显露的方法名。 functionName服务器页中实现methodName的函数名。 p1,p2传递给方法的参数列表──如果有参数的话。仅当该方法在VBScript中实现时,才能以这种方式显式地声明参数。参数名在构造函数内必须是一致的,但不需要和用户在方法本身中所使用的参数名匹配。用户不需要显式地声明传递给javascript中所实现方法的参数。 下面的示例显示了一个完整的ASP页,该页显露两个方法,square和add,这可以从客户脚本中调用。square方法是在javascript中实现的,而add方法则是在VBScript中实现的。 <%RSDispatch%> <!–#INCLUDEFILE=\”../_ScriptLibrary/RS.ASP\”–> <SCRIPTRUNAT=SERVERLANGUAGE=\”javascript\”> varpublic_description=newMyServerMethods(); functionMyServerMethods() { this.square=squareNumber; this.add=Function(\’n1\’,\’n2\’,\’returnaddNumbers(n1,n2)\’); } functionsquareNumber(numberToSquare){ returnnumberToSquare*numberToSquare; } </SCRIPT> <SCRIPTRUNAT=SERVERLANGUAGE=\”VBScript\”> FunctionaddNumbers(num1,num2) \’数据类型发生转换,因为它们作为字符串进行传递 addNumbers=CInt(num1)+CInt(num2) EndFunction </SCRIPT>

收藏 (0) 打赏

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

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

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

常见问题

相关文章

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

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