`
zyl
  • 浏览: 486314 次
社区版块
存档分类
最新评论

关于服务端生成js的构思

    博客分类:
  • ajax
阅读更多
   研究了ext很久了,一直想为ext直接封装一个服务端组件。考虑到ext组件的构建都是需要使用js来完成,那么服务端生成的代码也就是js而不是html。
    如果采取纯Ajax的方式,类似于Echo2的构造,不过这样对于Session可能是一个负担,同时可能会造成服务端的拥堵。不过使用纯Ajax有个好处,就是js只需要装载一次就行了。而如果使用各个不同的页面方式,则需要多次装载ext的js文件,这对于网络也是一个压力。
    不过创建的初衷,此框架主要还是使用于内部网,这样对于性能方面的担心可以略过了。
    设计流程如下:
    类似于Jsf的请求流程,提供Lifecycle,基本上也就五个生命周期,apply request,process validators,update model,invokeAction,render ajax。
    先不考虑其他的生命周期,先来处理render ajax部分。基本构思还是以render xml为主,主要的格式如下:
   
<message xmlns="http://www.esoft.org/servermessage">
  <lib>
    <js url="widgets/ext-component"/>
  </lib>
  <script>Ext.QuickTips.init();</script>
  <content cid="W9"><div id="W39"/></content>
  <remove>Ext.get('W29').remove();</remove>
</message>

lib 中主要用来装载ext的各个组件js,这样不需要一次装载。
script,主要的执行js脚本
content用于创建相应的html
remove相应的删除js脚本

为什么需要增加remove而不是把所有的脚本都放在script中。
这是由于整个处理都在一个页面中,为了能按照顺序执行相应的脚本,remove的脚本需要优先执行,当两个组件不停的切换的时候。

client 对于脚本的解析流程如下:
首先分批装载js url
当所有的js装载完成后
执行remove 脚本
遍历content,增加相应的html node
执行script脚本。

对于页面的生成,基本上没有什么问题。
只是如果采用这种方式,可能目前来说只能依赖于ext这个框架,对于服务端的灵活性也就大打折扣,不过既然是为了ext而做的,那也就无所谓了。

不知道各位对这种生成方式有什么不同意见,期待讨论。
分享到:
评论
3 楼 gif98 2008-01-15  
楼主的想法跟我不谋而合,想问一下remove相应的删除js脚本 ,是指删除以前返回的那些js脚本吗?
2 楼 zyl 2008-01-11  
stevenwang 写道
你好像把方向搞反了。
为了减轻服务器的负载才选择了rich client技术,
你却要用服务器技术生成客户端代码。
是在匪夷所思

和大量的html代码相比,js代码可谓少之又少了。当然,如果你想采取Ajax方式,服务端的负担是没有办法减轻的。就算用rich client也是不能减少通信次数的,只能增加客户体验而已。
1 楼 stevenwang 2008-01-11  
你好像把方向搞反了。
为了减轻服务器的负载才选择了rich client技术,
你却要用服务器技术生成客户端代码。
是在匪夷所思

相关推荐

    java webservice 客户端、服务端生成工具

    Java WebService客户端和服务端生成工具是用于简化Java开发者在创建和调用Web服务时工作的实用程序。这些工具自动生成所需的代码框架,使开发者能够快速地与WebService进行交互,而无需手动编写大量的XML Schema...

    java服务端生成json(json服务端)

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在Java中,我们可以使用多种库来实现JSON的生成,如Gson和FastJson。 **Gson库** Google开发的Gson...

    二维码的服务端生成

    在服务端生成二维码是常见的应用场景,尤其在移动互联网和物联网领域。服务端生成二维码的优点在于可以动态控制二维码的内容,提高安全性,并且能够处理大量请求。 1. **服务端生成二维码的优势** - **安全性**:...

    服务端生成技术的思考

    从给定的文件信息来看,标题与描述都指向了“服务端生成技术的思考”,这表明文章的主题将围绕服务端生成技术(Server-Side Generation,SSG)进行深入探讨。然而,部分代码内容似乎与标题描述不符,涉及的是Delphi...

    silverlight 服务端生成文件

    本篇文章将详细探讨如何在Silverlight中实现服务端生成文件,以及其在日志信息方面的应用。 首先,理解Silverlight的服务端交互是至关重要的。尽管Silverlight主要运行在客户端浏览器上,但它可以通过WCF(Windows ...

    二维码的服务端生成--

    - **Node.js**: `qrcode-generator` 和 `qr-image` 库提供了生成二维码的功能。 - **Java**: `Zxing`(Zebra Crossing)是一个开源项目,包含了二维码生成和解码功能。 - **PHP**: 可以使用 `Endroid QR Code` 库。 ...

    二维码的服务端生成 二维码

    服务端生成二维码意味着在服务器端通过编程实现二维码的创建,而不是在客户端(如用户设备)上。 服务端生成二维码的优点包括: 1. **安全性**:服务器端可以更好地控制数据,避免用户直接接触到敏感信息。 2. **可...

    二维码的服务端生成 源代码

    1. QRCode.js:这是一个JavaScript库,适用于前端生成二维码,但在服务端环境下,可以通过Node.js环境运行。 2. python-qr:Python语言的二维码生成库,功能强大,易于集成。 3. go-qrcode:Go语言的二维码生成库,...

    浅析木马服务端的生成技术.pdf

    ### 浅析木马服务端的生成技术 #### 一、引言 随着信息技术的不断发展,网络攻击手段也日益多样化,其中木马程序作为一种常见的恶意软件,在网络安全领域引起了广泛的关注。木马服务端的生成技术是指通过特定的...

    牧民远控正式版服务端生成器

    牧民远控正式版服务端生成器牧民远控正式版服务端生成器 牧民远控正式版服务端生成器

    服务端运行javascript代码

    除了Node.js,还有一些其他框架和库也支持服务端JavaScript,比如Deno,它是由Node.js的创建者Ryan Dahl推出的全新JavaScript/TypeScript运行时。Deno提供了一种更现代、更安全的环境,内置了 TypeScript 支持和权限...

    服务端生成json和客户端获取json的demo

    客户端通常是指Web应用的前端部分,可以使用JavaScript(配合AJAX)或者现代的前端框架如React、Vue.js来获取服务端的JSON数据。以JavaScript的fetch API为例,展示如何获取JSON: ```html &lt;!DOCTYPE html&gt; , ...

    根据wsdl生成webservice服务端(3种方式)

    ### 生成WebService服务端的方法详解 #### 前言 在日常开发中,通常是由开发团队构建WebService服务端,客户端则通过服务端提供的WS-Definition Language (WSDL) 文件生成客户端代理并进行交互。但有时也会遇到特殊...

    asp.net应用Excelpackage在服务端生成excel

    在这个场景下,ExcelPackage库是一个非常实用的工具,它允许我们在服务端生成Excel文件,并且可以利用预先设计好的模板来快速填充数据,保持一致的格式。本文将详细介绍如何在ASP.NET中使用ExcelPackage在服务端生成...

    服务端生成

    服务端 生成 木马

    java版WebService生成客户端和服务端的实例

    本实例将详细讲解如何使用Apache Axis1.4工具来生成Java版的WebService服务端和客户端。 首先,让我们理解WebService的基本概念。WebService是一种基于HTTP协议的网络服务,它通过SOAP(Simple Object Access ...

    cxf生成客户端 服务端代码

    cxf生成客户端 服务端代码

    WebService服务端demo样例生成json

    一个简单实用的WebService服务端开发样例,采用Spring MVC,利用 x-fire资源,加入 log4j日志记录,加入maven来获取对应依赖。 该服务提供一个针对 TRSServer 全文检索服务器数据库 的检索功能,通过 url来执行全文...

    FusionCharts结合J2EE服务端生成图片demo

    J2EE结合FusionChart服务端生成统计图的demo,将资源下载下来,导入到MyEclipse中即可运行,所有依赖的东西,都已经打到包中了。例子中包括客户端右键统计图下载,服务器端将图片保存到硬盘上的web自定义目录下等...

    axis2生成客户端服务端代码

    ### Axis2生成客户端与服务端代码详解 #### 一、Axis2简介 Axis2是Apache组织下的一个开源项目,它是一种高性能、轻量级的Web服务框架,支持SOAP和REST等协议,能够帮助开发者轻松地构建和部署Web服务。Axis2提供了...

Global site tag (gtag.js) - Google Analytics