Ajax技术概览 Ajax技术概览

Ajax技术概览

  • 期刊名字:科学之友
  • 文件大小:105kb
  • 论文作者:周丽娟,李明
  • 作者单位:山西财经大学信息管理学院,太原警官职业学院
  • 更新时间:2020-10-30
  • 下载次数:
论文简介

科学之友Friend of Science Amateurs2008年10月(29) BAjax技术概览周丽娟',李明2(1.山西财经大学信息管理学院,山西太原030006; 2.太原官职业学院,山西太原030032)摘要:文章简要介绍web应用开发领域近几年来的热门技术Ajx。作为web2.0文化的一个重要组成部分,ajax给web应用的使用者带来了与传统web应用不同的体验,同时为web应用开发者提供了一种新的技术选择,jx将传统服务器端web应用框架的MVC三层中的部分层次从服务器端移到了客户端。.关键词: MVC架构;XML/DOM;异步web请求中图分类号: TP31 .文献标识码: A文章编号: 100-8136(2008)29-0140-03准确地说,Ajax并不是一-种新的技术,而是一-种将若干已经1 Ajax 的核心对象存在的技术(iavacipt.xl.es+div 等)经过重新组合包装形成的一种 web应用实现模式。Ajax 是Asynchronized Javascript andAjax技术的核心是浏览器的内置Javascript对象XML-XML的缩写,译成中文应该表述为:使用javaseript及xml来实现HtpRequesto它负责完成指挥浏览器与服务器之间进行异步通异步的web请求。讯,获取响应数据的工作。我们先来回顾-下传统的web请求方式:喪1 ajax操作代码用户点击网页上的链接或表单按钮-→+var url = "/ajx- -dermo/static article- -ranking.html";浏览器联系web服务器获取网页内容→var callback = processAjexResponse;用户等待浏览器完成新的页面数据的获取-→浏览器显示新的页面,同时浏览器地址栏中的url指向roq = new XMLHtpRequest(;新的页面req.onreadystatechange = callback; .req,open("GET",url, true);ajax的请求过程有以下不同:req.send(nul);(1)异步的htp请求。用户通过点击网页链接或表单按钮所触发的请求操作由浏览器内置对象XMLHttpRequeet以异步的方function allback0{式发往服务器。...对返回数据进行处理....所谓异步是指请求发送的操作在浏览器后台完成,该操作不会导致整个页面的刷新,也不会导致地址栏中url地址的更新从服务端返回的回应数据保存在XMLHtpRequest的两个属(2)针对DOM标签的数据局部更新。由异步的http请求获性中,它们分别是reponseText和responseXML。 其中reeponse-取的服务端新页面内容可以由客户端代码决定填充在页面的某Text以字符串的形式存放完整的http回应数据。个局部,而不需要每个请求都刷新整个页面。最常用的作法是在页面中用空的

标签来指定页2 Ajax 的数据模式面html的填充目标。
标签与XMLHtpRequest之间的联系同的模式。在ajax请求中,请求数据和回应数据可以采用以下两种不是通过javascript及页面DOM(document.gtElementByld0)来建立的2.1 Web请求( web request)(3)基于Jascript语言的富客户端。使用了ajax 后带来的友在这种模式下,XMLHtpRequest提交给服务器的数据是与好敏捷的用户体验也是ajax受到欢迎的重要原因。目前有很多传统web请求- -致的 cgi请求,而服务器向XMLHttpRequest返回开源的团队及商业团队都在生产基于javascript 语言的富客户端的也是与传统web请求-致的新页面html文档,该文档以字符库,通过提供更丰高的页面特效及页面控件,使得用户使用web串的形式保存在XMLHtpRequest.responseText属性中,浏览器可应用时体验越来越接近于传统的桌面应用。以直接用该属性的值来填充网页中的标签内容。由于ajax请求仅针对DOM的局部进行数据更新,因此服务2.2 Web 远程调用( web remoting)器的响应数据不需要是整个html页面,从而减少了服务器及网中国煤化工交给服务器的是xml格络负担,也给用户以更加敏捷的体验。式的数TH_回的也是xml文档,提供但是实现富客户端将带来客户端javascipt 代码的堆积,会客户端.CN MH COM的形式保存在XML-给网络带宽及浏览器的运行带来较大的负担,这些向题及其解HtpRequet.reponseXML 属性中,客户端代码用这些数据来填充决方案将在第4部分中描述。页面中的某些内容。-140-科学之友Friend of Science Amateurs2008年10月(29)B在这种模式下,客户端(浏览器)的javascripl代码需要完成所有的场合都适合使用ajex技术。以下操作:①将用户的请求数据打包成xml文档,即Javacript对以下列出适宜使用ajax技术的场合列表。需要注意的是,这象的序列化(erialize )过程;②解析服务器的响应数据xml文档,些是建议而绝非原则,开发人员应根据应用的具体情况及个人即Javacript对象的反序列化(eeialie)过程;③将从xml文档喜好来进行选择。开发人员应该明确:ajax并不是种必需, 而是中分离出的数据填写到相应的页面标签中。一种选择。以上这些操作在目前的web远程调用工具库中都提供了自表2适宜使用ajax的场合动实现。1.基于Form(表单)的操作3 ajax 开发中的常见问题及解决方案2.简单的数据提交操作3.1“回退”按钮跳转问题, 书签问题3.用户输人文本的自动完成由于ajax请求不修改浏览器地址栏,因此该请求不会被记4.用户操作中的错误提示录在浏览器的地址历史中,如果用户在发起- -次ajax请求后点5.耗时较长的操作,使用ajax提交请求,并向用户提示进度击浏览器的“回退"按钮,会发现回到的是比预期结果更早的页面。也由于同样的原因,用户无法将通过异步方式发起的ajx请简单地说,ajax更加适合用于“操作”密集型的场合,而对于求的urd设置成书签。“数据”密集型的场合,则应使用传统的web请求方式。人们对解决这一向题进行了各种探索,目前比较成熟的做5常用的开放源码ajax库法是引入ifame ,并在发起ajax请求时为ud忝加一些伪参数,详细方案见参考文献。5.1 prototype3.2 IE 中的缓存问题prototype.js 无疑是目前web请求模式ajax库的事实标准。它IE的XMILHtpRequeet内置对象会对相同的ajax请求的响的作者是Sam Stephenson。 Protospe 库构思巧妙,代码优雅,对应数据进行缓存,只要ajax请求的url 地址不变,则无论返回数javascript的基本对象及ajax的核心操作都进行了高质量的封据是否相同,IE都会显示相同的结果,这显然与我们的期望相装,并在实现时充分考虑了不同浏览器的javascript实现之间的左。兼容性问题。目前比较常见的解决方法是在ajax请求的url尾部加上- -Prototype.js 1.5.0 版本的大小,在未压缩时仅有69.6 K,是- -个随机参数,用来保证每次请求的url都不同。个轻量级的库,这也是目前几乎所有的ajax应用或富客户端库3.3 javascript 代码的增加导致网络带宽开销及浏览器的运行都建立在potpe之上的原因之一-。开销增大5.2 dwr/buffalo由于ajx将许多原本在服务器端完成的工作移到客户端dwr和bufalo是web远程调用模式ajax框架的代表。(浏览器).上完成,所以相应的逻辑代码将以javaseript 的形式被dwr是目前Java平台上最常用的web远程调用模式库。Dwr下载到客户端,随着javascript 代码变得庞大,下载所占用的带宽支持批处理,即将多个远程调用放在一个ajx请求中完成,支持也将增加。任意对象在Java和Javascript之间的转换。在dwr2.0版本中还引针对这个问题,人们提出了jawaeript 压缩技术,即利用了反向ajax(reverse ajx)的技术,可以由服务器端异步地将信javaseript语言的某些特性,用更短小的代码实现与源代码完全相息推送到客户端中。目前已经有人将dwr移植到coldusion平台同的功能。Javacript压缩技术分为若干层次,从最简单的去除注之上。释及空白字符,到复杂地利用Javascript eval 函数等高级方法,Bufalo是由中国人Michael Chen 原创的轻量级web远程可以在不同程度上减少javascript 代码的长度。以YUI中的ya-调用框架,它的出现甚至在ajax概念进入人们的视野之前。Buf-hoojs为例,其源代码文件大小为13.9 K字节,而经过压缩后的falo的底层使用Burlap协议来进行数据交换(dwr 使用自定义的文件大小仅为2.74 K字节,压缩率达到了80%。简单文本协议),支持任意对象、任意深度的java- -javascript双向3.4 javascript 语言的局限性导致代码可读性下降,调试困难序列化。单从技术上讲.bfalo不弱于dwr。可惜由于种种原因,与Java语言不同,Javaseript是一种动态语言, 它没有强类Bufalo的国际影响力远远不及dwTo型,没有编译时的类型检查。它的动态性是它的优势同时也是它6.3 javascript高客户端库的局限性,能够带来简洁的代码,但同时也是难以理解的代码。这一类ajax库在以上两类基础ajax框架之上,实现了丰富另外,也是由于javascript语言的动态特性,目前还没有出现的页面特效和页面控件(树形结构、图表、进度条、动画效果、拖有说服力的jvaecript调试具。因此.在选择利用ajax进行应用拽等等),其中比较有代表性的如YUL( Yahoo UI Library),Dojo,开发时,需要对开发人员提出更商的要求。Rico等。作为富客户端的库,- -条重要的设计原则是使各种页面特4 ajax 技术的使用场合效和页面控件能够独立使用,避免出现包含了很多特效、控件而没有完美的技术,任何技术都是双刃剑,它们在某- -些方仅使用其中很少的几种情况。面、针对某- -些问题的解决上表现出色,而在其他方面则差强人5.4 GWT意,甚至会引人新的问题,Ajax也不例外。rolr所使用乃推广的siav解决方案,目前的Gmail及如上一节中提到的“回退”按钮跳转问题,无法设置书签的Googl中国煤化工。问题,虽然能够有- -些解决方案,但是使用这些解决方案会导致Java 'YHCNMH辟蹊径,采用将服务器端整个应用的架构和代码变得非常古怪,可读性下降,维护成本升20u11p4 17H 4,来降低Javascript局限性高。另外javacript语言的局限性也会降低开发效率。因此,不是带来的 -系列问题。-141-科学之友_Friend of Science Amateurs2008年10月(29)| B I浅析高校校园网的现状及改进措施刘俊杰(太原理工大学阳泉学院,山西阳泉045000)摘要:文章结合本院的实际情况,分析了校园网的现状,提出了建立校园网的安全管理制度和利用防火墙等技术手段,加强对校园网进行安全管理等相关的维护措施。关键词:校园网;安全隐患;防火墙;安全管理中图分类号: G259.23文献标识码:A文章编号:1000- 8136(2008)29- -0142 -02在信息化时代,网络是重要的基础设施,也是现代教育必不客",首先在校园网内部找个目标进行“攻击”,不管出于什么目可少的物质条件。校园网的建成使高校实现了管理网络化和教的,不管攻击成功于否,都会给校园网的安全管理带来麻烦。学手段现代化,对于提高学校的管理水平和教学质量具有十分同时,随着校园网规模的扩大,网络资源逐渐增加,某些重重要的意义。同时,高校对校园网的依赖性逐渐增强,再加上校要的信息如:教学科研成果、校园建设规划、试题、生成绩管理园网的开放性、自身的脆弱性普遍的攻击性和管理的困难性等等,不仅会引起校园内部“黑客”的关注,同时也会成为校园外部特点,一旦网络出现故障,不管是哪方面的原因,都将影响高校“黑客”的关注重点,他们会想法设法攻击“目标”,非法获取自己校园(网的正常运转,不能使其发挥应有的作用。因此,针对校园想得到的信息。网存在的隐患和校园网的现状,提出必要的改进措施,加强安全1.3系统漏洞管理,是校园网正常运行的重要保障。目前,①校园网中服务器的操作系统多数采用Win-dows2000/2003或Linux操作系统,系统本身就存在-些安全漏1高校校园网的安全隐患洞,大家从CCERT(中国教育和科研网紧急响应组)网站上不断1.1 病毒攻击更新的系统补丁不难发现,系统本身存在的诸多漏洞给入侵者对于计算机病毒已经是人人皆知的、关系到计算机安全的提供了方便的“后门";②经常使用其他免费的应用软件(如SQL重要问题之一,它有着巨大的破坏性、危害性,并具有传播速度Server.0fice等)都存在安全隐患,如果不采取应急措施,轻者影快危害性强、变种快等特点,如今流行的计算机病毒不再是以响本机运行,重者导致网络中断,甚至瘫瘓;③校园内计算机应单个的计算机为攻击目标.而是对网络的攻击,如蠕虫病毒,通用的大量普及,接入校园网的节点日渐增多,而大部分节点没有过电子邮件、扫描、网络共享以及客户端都有可能感染校园中的采取一定的防护措施,随时都可能造成病毒泛滥、信息丢失、数各种服务器,修改网站的主页及其他数据,导致因特网服务瘫据损坏、网络被攻击、系统瘫痪等严重后果。瘓,甚至可能影响整个校园网的正常运行。1.4 管理上的漏洞1.2“黑客"的攻击(1)高校校园网的建立,多数是由某个公司投标建设,而后高校校园网的服务对象主要是学生和教师,对于-部分学交付学校使用,有相当多数的高校在对待校园网的安全管理问生来说,或者急于想验证所学知识,或者出于好奇,或者想引起题上重视不足,认为高校校园网是服务性而非盈利性的网络,不别人的关注,,或者是有其他不好的想法等等,他们就会充当“黑会受到“黑客"攻击...等思想的存在。在GWT架构中,开发人员编写的所有的代码均为Java代来完成,由于Java语言对Javaseript语言有着更强的类型、更严码,其中实现客户端功能的代码将由GWT提供的Ja-格的语法、功能更加强大的开发工具和调试工具,因此使用GWTva- 2-Javascript编译器编译成为javascript代码,而这部分代码是来开发ajax应用会比其它的ajax架构有着更高的效率。对开发人员透明的。GWT同时还提供了CWT Brower 工具来对GWT的缺陷在于它所提供的页面控件及特效相对有限,适代码行为进行预览。合用于开发以交互功能而非数据展示为中心的应用。GWT的创新之处在于将ajax的开发统-放到Java平台上Overview on Ajax TechniqieZhou Ljuan, u MingAbstract: This paper brely intoduces the most popular technology Ajax中国煤化工:lopment in recent years.As an important component Web2.0 culure, ajax brings web users diferentplication applications andprovides a new technology options for web application developern: ajax tran:YHC N M H G apcaion framnework ofthe traditional server- side from the server- side to client side.Key words: MVC framework; XML 1 DOM; asynchronous web requests-142-

论文截图
版权:如无特殊注明,文章转载自网络,侵权请联系cnmhg168#163.com删除!文件均为网友上传,仅供研究和学习使用,务必24小时内删除。