快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

REMOTE SCRIPT文档(转载自微软)(一)

文档: 远程执行服务器脚本

复杂的 Web 应用程序既调用客户脚本又调用服务器脚本。客户脚本常常用于对应用程序的用户接口进行编程──例如,为了动态改变 Web 页文本,对用户动作,比如双击作出反应,并执行诸如验证这样的面向客户的任务。客户脚本在浏览器中局部执行,这样就向用户提供了一种生动的、反应快速的接口。

对比来说,服务器脚本是用来对某个应用程序的末段编程的。这常常引起对某个数据库的存取动作,或者执行中间层业务逻辑。服务器脚本也用于创建较大范围的应用程序:也就是可能通过多种不同类型的浏览器(每个都有不同存取能力)进行存取的应用程序。

但是客户和服务器脚本是互斥的。当某个页首次哀求时,服务器可能运行服务器脚本,并将页传递给浏览器,然后浏览器就可以运行客户脚本。不过,假如该页上的服务器脚本有必要再次运行的话,那么必须将该页提交回服务器,服务器可以有效地重新运行该页。对页面上控件状态和脚本中值的维护可能涉及到在浏览器和服务器之间往返传递信息的一个复杂的 scripting 过程。另外,客户和服务器之间的折返过程涉及到显示某个应用程序的重载过程。

一种折衷方案是 remote scripting。Remote scripting 使得用户可以在客户脚本中工作,但要调用某个 ASP 页中的方式(函数或者例程)。实际上,用户可以象调用本地例程那样调用服务器脚本,不过它们仍旧运行在服务器上,并具有对服务器能力的所有存取权限。由于用户从不把当前页留作调用服务器脚本之用,因此页的状态仍旧保持。

用户可以在下列任务中使用 remote scripting:

当用户继承和某个数据输入表单交互作用时,服务器上的数据检查和数据验证。


更新来自服务器的页面中的信息而无须刷新屏幕。
Remote Scripting 如何工作

Remote scripting 是作为一个函数库来实现的,当用户希望运行某个服务器方式时,用户从客户脚本中调用这些函数。当用户调用某种服务器方式时,哀求即被传递到浏览器中异步运行的一个代理过程中(在实现过程中,代理是作为一个 Java applet 来实现的。)该代理过程发送一个哀求到包含用户调用方式的 ASP 页的服务器中。

服务器加载 ASP 页,而且该 ASP 页上的一个特别例程将用户的哀求调度到准确函数。假如方式有返回值,那么该值即被发送回代理过程,该过程将之包装为一个对象 ──一个调用对象 ──它包含了返回值以及其他有用信息的属性。

当用户在客户脚本中对服务器方式进行调用时,可以在两种方法中选择其一来完成:

同步 用户脚本调用远程过程,并等待其返回。假如用户在处理之前需要远程过程结果的话,那么就有必要这么做。


异步 用户脚本对某个远程脚本进行调用,然后继承处理。该页保持有效状态,以便于用户处理。假如某个调用要持续较长一段时间,那么就有必要使用异步调用。
Remote Scripting 的部件
为了实现 remote scripting,除了用户自己的客户 (.htm) 文件和服务器 (.asp) 文件外,还需要下面的文件:

Rs.htm 包含了用户在自己的 .htm 文件中初始化 remote scripting、执行远程过程、检查远程调用状态,以及获得方式结果时所要使用的方式。


Rs.asp 包含了用户在 .asp 文件中初始化服务器端的 remote scripting,以及在自己的页中调度到适当函数时所要调用的方式。


Rsproxy.class 包含客户和服务器页之间通信时 applet 的 Java 类文件(对象代码)。
这些文件充当用户可以在自己的文件中使用的文件库。一般说来,用户只需要简朴地将相关文件(Rs.htm 或者 Rs.asp)包括进自己的客户或者服务器页中,然后遵照所需调用方式进行处理。有关具体信息,请参阅 在客户页中使得 Remote Scripting 有效 以及 在服务器页中使得 Remote Scripting 有效。

在用户的客户页中,用户引用 Rs.htm,这使得该文件中的方式对于用户服务器脚本来说是有效的。对 Rsproxy applet 的调用就在这些方式中。当用户创建服务器页的时候,用户将服务器端的一个 INCLUDE 语句 ─ 该语句引用 Rs.asp 文件 ─ 包括进去。伴随客户文件中的 Rs.htm,这样做使得所需要的方式在服务器页上成为有效的。

所有文件都必须在服务器上是有效的。用户可以将它们放置到任何合适的地方。不过,对于用户的客户和服务器文件来说,当它们从服务器发出哀求时,路径都必须是有效的。缺省的情况是,remote scripting 过程假设这些文件在用户服务器或者工程的虚拟根目录外的一个名为 _ScriptLibrary 的文件夹中是有效的。假如用户不将它们放到那里,那么要特殊注重它们的路径,因为在创建客户和服务器页时,用户需要指定之。

Remote Scripting 和安全性
Remote scripting 提供和 Java applet 或 IFrames 同样级别的安全性。为了确保 remote scripting 不违背服务器安全性,用户不能将结构化数据(包括对象)作为参数传递给某个服务器文本来执行。另外,用户进行 remote scripting 调用的服务器必须和用户哀求包含该哀求的客户页的服务器是同一个。
返回类别: 教程
上一教程: 用ASP实现一个真正的注册页面
下一教程: 用ASP实现登陆页面控制的源代码

您可以阅读与"REMOTE SCRIPT文档(转载自微软)(一)"相关的教程:
· REMOTE SCRIPT文档(转载自微软)(七)
· REMOTE SCRIPT文档(转载自微软)(四)
· REMOTE SCRIPT文档(转载自微软)(五)
· REMOTE SCRIPT文档(转载自微软)(九)
· REMOTE SCRIPT文档(转载自微软)(六)
    微笑服务 优质保证 索取样品