第三十三章 使用 CSP 进行基于标签的开发 - 使用Hyperevents #server和#call调用服务器端方法

简介: 第三十三章 使用 CSP 进行基于标签的开发 - 使用Hyperevents #server和#call调用服务器端方法

第三十三章 使用 CSP 进行基于标签的开发 - 使用Hyperevents #server和#call调用服务器端方法

使用Hyperevents #server#call调用服务器端方法

hyperevent是我们对web浏览器事件的CSP扩展,是一种用于创建交互式web动作的web开发技术。使用hyperevents,可以在Caché服务器上运行类的方法来响应客户端web浏览器中的事件,而无需在客户端重新加载HTML页面。在更广阔的世界里,这种能力通常被称为AJAXCaché hyperevents在许多情况下非常有用,特别是在数据库应用程序中,可能希望对数据库执行验证或搜索功能,而不必重新加载和重新格式化整个网页。通常,超级事件是使用XMLHttpRequest实现的。

如果正在使用类开发CSP页,则需要调用..HyperEventHead方法在< Head >部分的输出期间加载hyperevents所需的JavaScript

使用#server调用服务器端方法

CSP文件中,可以使用#server指令调用服务器端方法。可以在任何允许JavaScript的地方使用这个指令。

#server指令的语法是:

#server(classname.methodname(args,...))#
复制代码

其中classname是服务器端Caché类的名称,methodname是该类中方法的名称。args是传递给服务器端方法的客户端JavaScript参数列表。注意,开始和结束#符号之间的所有代码必须都在一行上。

例如,要调用CachéMyPackage中名为Test的服务器端方法,请使用:

<script language="JavaScript">
function test(value)
{
   // invoke server-side method Test
   #server(MyPackage.Test(value))#;
}
</script>
复制代码

CSP编译器将每次出现的#server指令替换为调用服务器端方法的JavaScript代码。

从给定的CSP页面,可以调用属于为其生成的类的方法,方法使用..方法名语法。例如:

#server(..MyMethod(arg))#
复制代码

使用#call调用服务器端方法

同步性由被调用的方法、#server#call决定。#server是同步的;##call是异步的。

同步调用可能会导致UI响应明显暂停(挂起)。然而,异步调用有其自身的优点和问题。例如,如果用户在网页上输入一个值,页面不会立即更新;更新时,用户可能已经移动到另一个页面。

#server同步。 当调用服务器端方法时,#server向客户端返回一个值(因为客户端正在等待)*,*返回JavaScript供客户端执行

#call是异步的:当调用服务器端方法时,#call不等待返回值。 相反,应用程序依赖于服务器发回的JavaScript在客户机上执行任何需要的操作。

当使用异步##call时,在进行多个连续调用时必须非常小心。 如果在前一个方法完成之前通过#call调用了一个方法,web服务器可能会决定取消你前一个方法调用。 或者用户可能在JavaScript执行之前转移到另一个页面,因此JavaScript在错误的页面上执行,从而导致错误。 因此,大多数情况下,在启动可能需要一段时间的工作时使用#call,并提供指向显示长时间运行的job状态的另一个页面的链接。

#server一样,可以在任何允许JavaScript的地方使用#call指令。

#call指令的语法是:

#call(classname.methodname(args,...))#
复制代码

其中classname是服务器端Caché类的名称,methodname是类中的方法的名称。args是传递给服务器端方法的客户端JavaScript参数列表。 注意,在#号开始和结束之间的所有代码都必须在一行中。

例如,要在CachéMyPackage中调用一个名为Test的服务器端方法,使用:

<script language="JavaScript">
function test(value)
{
  // invoke server-side method Test
  #call(MyPackage.Test(value))#;
}
</script>
复制代码

CSP编译器用调用服务器端方法的JavaScript代码替换#call指令的每次出现。

从给定的CSP页面,可以使用..调用属于为其生成的类的方法。MethodName语法。 例如:

#call(..MyMethod(arg))#


相关文章
|
6月前
|
弹性计算 ice
阿里云4核8g服务器多少钱一年?1个月和1小时价格,省钱购买方法分享
阿里云4核8G服务器价格因实例类型而异,经济型e实例约159元/月,计算型c9i约371元/月,按小时计费最低0.45元。实际购买享折扣,1年最高可省至1578元,附主流ECS实例及CPU型号参考。
653 8
|
6月前
|
弹性计算 定位技术 数据中心
阿里云服务器配置选择方法:付费类型、地域及CPU内存配置全解析
阿里云服务器怎么选?2025最新指南:就近选择地域,降低延迟;长期使用选包年包月,短期灵活选按量付费;企业选2核4G5M仅199元/年,个人选2核2G3M低至99元/年,高性价比爆款推荐,轻松上云。
677 11
|
6月前
|
弹性计算
阿里云8核16G云服务器收费标准:最新价格及省钱购买方法整理
阿里云8核16G云服务器价格因实例类型而异。计算型c9i约743元/月,一年6450元(7折);通用算力型u1约673元/月,一年仅需4225元(5.1折)。实际价格享时长折扣,详情见ECS官网。
|
6月前
|
域名解析 弹性计算 负载均衡
给阿里云服务器加速的方法有哪些?
本文介绍如何通过阿里云CDN加速、ECS网络优化及SLB负载均衡三种方法提升服务器响应速度。涵盖具体操作步骤,助力用户优化访问性能。
|
8月前
|
弹性计算 小程序 容灾
2025购买阿里云服务器配置选择方法:企业+个人+学生攻略
2025年阿里云服务器购买省钱攻略,涵盖个人、中小企业及高性能配置推荐。个人用户优选38元轻量或99元ECS,企业用户选199元2核4G服务器,游戏用户适合4核16G或8核32G配置,详情请参考最新活动及攻略。
1431 11
|
7月前
|
弹性计算 定位技术 数据中心
阿里云服务器选择方法:配置、地域及付费模式全解析
2025阿里云服务器选购指南:就近选择地域以降低延迟,企业用户优选2核4G5M带宽u1实例,仅199元/年;个人用户可选2核2G3M带宽ECS,99元/年起。长期稳定业务选包年包月,短期或波动场景用按量付费,轻松搭建网站首选高性价比配置。
|
10月前
|
C# 图形学 开发者
Unity开发中使用UnityWebRequest从HTTP服务器下载资源。
总之,UnityWebRequest就是游戏开发者手中的万能钓鱼竿,既可以获取文本数据,也能钓上图片资源,甚至是那声音的涟漪。使用UnityWebRequest的时候,你需要精心准备,比如确定URL、配置请求类型和头信息;发起请求;巧妙处理钓获的数据;还需要机智面对网络波澜,处理各种可能出现的错误。按照这样的过程,数据的钓取将会是一次既轻松愉快也效率高效的编程钓鱼之旅。
564 18
|
8月前
|
缓存 监控 前端开发
详述uniapp项目部署于Nginx服务器的配置优化方法。
综上所述,uniapp项目部署于Nginx的优化方法多种多样,应根据实际情况灵活地采取合适的策略。配置后持续监控和调试,适时调整配置以保持最佳性能,并确保随着应用需求和访问模式的变化,服务器配置得到适当的更新和优化。
363 0
|
9月前
|
安全 关系型数据库 网络安全
安全加固:启动PostgreSQL 14服务器SSL加密的方法指南在CentOS 7环境中
通过上述步骤,你可以为PostgreSQL数据库服务器设置SSL加密,从而增加数据在传输中的安全性。确保维持证书的有效性,并且定期更新和管理密钥,以防止未授权访问。
437 0
|
缓存 PHP 数据库
WordPress网站服务器性能优化方法,站长必备。
最后,当你将这些方法组合起来并实施时,您将发现你的WordPress网站性能有了显著的提高。别忘了,这不是一次性的任务,要定期执行,保持你的车(网站)始终在轨道上飞驰。
357 21
下一篇
开通oss服务