【www.gdgbn.com--远程脚本】

远程脚本调用技术(Remote Scripting)的最大特点是:客户端脚本调用服务器脚本时无需刷新整个页面。一般情况
下,Web页面需要与服务器交互时必须提交表单数据,刷新整个页面。这不仅不利于改善浏览效果,也不利于提高服务器效
率。利用远程脚本调用技术(Remote Scripting),客户端脚本可以像调用本地函数一样调用远程脚本函数,从而极大地
方便了交互式Web应用的开发。使得那些基于浏览器的应用更接近于传统的Win32应用。在复杂的表单验证和频繁的数据库
操作中,应用远程脚本调用技术的优点是显而易见的。
下面以一个示例来说明。它的功能是:在客户端输入文字,然后调用服务器端脚本函数,把SessionID与IP地址显示给
用户。
一、基本原理
远程脚本调用技术提供了一组接口函数。借助这组接口函数,客户端程序可以通过一个代理过程(一个Java Applet)
调用服务器端代码。JavaApplet(RSProxy.class)在后台工作,通常情况下用户代码并不需要直接操作它,它的配置也是
自动完成的。远程脚本调用既可以是同步调用(调用命令发出后一直等待,直到服务器执行函数结束后返回),也可以是
异步调用(函数调用后立即返回,调用时必须同时给出回调函数)。一个远程脚本调用技术示例必须包含如下支持文件:
RS.htm:包含客户端支持代码
RSProxy.class:这是一个Java Applet,实际完成客户/服务器交互过程
RS.asp:服务器端支持代码
(下载地址:http://msdn.microsoft.com/scripting/remotescripting/x86/rs10ben.exe)
使用远程脚本调用功能时,客户端和服务器端代码都必须符合一定的要求。在服务器端,首先必须启用远程脚本调
用:用#include包含RS.asp,并调用RSDispatch函数(参见sample.asp文件)。在服务器端实现远程脚本支持的关键在于
创建public_description对象。对于一个远程脚本调用客户程序来说,ASP文件可以看成是一个通过public_description对
象提供远程方法的对象,ASP文件中的所有其它函数都是私有的。这种私有意味着,客户程序只能对某些特定的函数实施远
程调用。应当避免写全局性的ASP代码(没有封装在函数中的代码),远程调用时这些代码是不会执行的,因为远程调用时
脚本执行过程和普通ASP页面执行过程是不同的。把全局脚本代码放入函数并显式调用,可以确保它们被正确地执行。
远程脚本调用技术要求服务器端的脚本必须用JavaScript编写。本例声明了一个Description类,该类包含一个公用的

本文来源:http://www.gdgbn.com/aspjiaocheng/3896/