热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

AJAX介绍(转)

什么是AJAX(a.^&`!Y8M现在应聘网站开发,势必会遇到AJAX这个词语。到到底什么是AJAX呢?!g1Z,\3^9i&amp
什么是AJAX( a. ^& `! Y8 M
现在应聘网站开发,势必会遇到AJAX这个词语。到到底什么是AJAX呢?
! g1 Z, \3 ^9 i& H5 i( ~太原理工大学,太原理工大学论坛,太原理工大学考研论坛,太原理工大学BBS,太原理工大学网络家园AJAX全称为“Asynchronous Javascript and XML”(异步Javascript和XML),是指一种创建交互式网页应用的网页开发技术。
" H- s8 a; {& i$ k+ H6 ]: gwww.tyutbbs.com主要包含了以下几种技术: . Z  G( c9 K/ y) ]; Y5 G
Ajax(Asynchronous Javascript + XML)的定义
. M0 o- {3 K/ H+ h太原理工大学论坛|太原理工大学考研论坛|太原理工大学BBS基于web标准(standards-based presentation)XHTML+CSS的表示;
% ^  |/ ?1 ?% l, _太原理工大学论坛|太原理工大学考研论坛|太原理工大学BBS使用 DOM(Document Object Model)进行动态显示及交互;
/ ^- \2 [. D  L9 ?太原理工大学清泽论坛成立于2006年8月8日,是一个完全由学生团队建设管理的太原理工大学交流的平台,竭力打造成所有太原理工大学学生必上的网络家园。使用 XML 和 XSLT 进行数据交换及相关操作;
8 V' Y' o5 u+ K- o( ]& ]0 a4 b1 D+ `太原理工大学清泽论坛使用 XMLHttpRequest 进行异步数据查询、检索;
( i& }( n: ?9 N: i  ^5 Wwww.tyutbbs.com使用 Javascript 将所有的东西绑定在一起。英文参见Ajax的提出者Jesse James Garrett的原文a 太原理工大学清泽论坛3 S: d, t2 S% R/ K8 V
类似于DHTML或LAMP,AJAX不是指一种单一的技术,而是有机地利用了一系列相关的技术。事实上,一些基于AJAX的“派生/合成”式(derivative/composite)的技术正在出现,如“AFLAX”。 太原理工大学论坛|太原理工大学考研论坛|太原理工大学BBS9 @7 Z! c3 k  T
AJAX的应用使用支持以上技术的web浏览器作为运行平台。这些浏览器目前包括:Mozilla、Firefox、Internet Explorer、Opera、Konqueror及Safari。但是Opera不支持XSL格式对象,也不支持XSLT。www.tyutbbs.com) ~4 O7 i9 `6 j
与传统的web应用比较
) a) M( Y1 H1 ]# pwww.tyutbbs.com传统的 web应用允许用户填写表单(form),当提交表单时就向web服务器发送一个请求。服务器接收并处理传来的表单,然後返回一个新的网页。这个做法浪费 了许多带宽,因为在前後两个页面中的大部分HTML代码往往是相同的。由于每次应用的交互都需要向服务器发送请求,应用的响应时间就依赖于服务器的响应时 间。这导致了用户界面的响应比本地应用慢得多。 太原理工大学论坛|太原理工大学考研论坛|太原理工大学BBS9 D6 ?. C" j" G; M# B$ {! [
与此不同,AJAX应用可以仅向服务器发送并取回必需的数据,它使用SOAP或其它一些基于XML的web service接口,并在客户端采用Javascript处理来自服务器的响应。因为在服务器和浏览器之间交换的数据大量减少,结果我们就能看到响应更快 的应用。同时很多的处理工作可以在发出请求的客户端机器上完成,所以Web服务器的处理时间也减少了。
+ t! M1 t) O7 Z太原理工大学,太原理工大学论坛,太原理工大学考研论坛,太原理工大学BBS,太原理工大学网络家园Ajax应用程序的优势在于:  N$ X/ D; B9 Z6 G. y0 j
1. 通过异步模式,提升了用户体验www.tyutbbs.com8 I  Z7 F8 ]6 G& B9 `
2. 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用* C) A( _6 @% h( ]1 N/ J1 u! d, P
3. Ajax引擎在客户端运行,承担了一部分本来由服务器承担的工作,从而减少了大用户量下的服务器负载。
7 i! c- H$ Y9 ]* g: w) \" uAjax的工作原理
4 K  n; ~$ E! L5 ^( E太原理工大学清泽论坛成立于2006年8月8日,是一个完全由学生团队建设管理的太原理工大学交流的平台,竭力打造成所有太原理工大学学生必上的网络家园。   Ajax的核心是Javascript对象XmlHttpRequest。该对象在Internet Explorer 5中首次引入,它是一种支持异步请求的技术。简而言之,XmlHttpRequest使您可以使用Javascript向服务器提出请求并处理响应,而不 阻塞用户。
# P# k1 U/ [! B+ S3 J& C: P* ~太原理工大学论坛|太原理工大学考研论坛|太原理工大学BBS  在创建Web站点时,在客户端执行屏幕更新为用户提供了很大的灵活性。下面是使用Ajax可以完成的功能:
7 x! m6 a* [9 ~* u太原理工大学清泽论坛成立于2006年8月8日,是一个完全由学生团队建设管理的太原理工大学交流的平台,竭力打造成所有太原理工大学学生必上的网络家园。    动态更新购物车的物品总数,无需用户单击Update并等待服务器重新发送整个页面。 www.tyutbbs.com5 V9 Z5 D* J% z/ a
    提升站点的性能,这是通过减少从服务器下载的数据量而实现的。例如,在某购物车页面,当更新篮子中的一项物品的数量时,会重新载入整个页面,这必须下载整 个页面的数据。如果使用Ajax计算新的总量,服务器只会返回新的总量值,因此所需的带宽仅为原来的百分之一。 消除了每次用户输入时的页面刷新。例如,在Ajax中,如果用户在分页列表上单击Next,则服务器数据只刷新列表而不是整个页面。 太原理工大学清泽论坛成立于2006年8月8日,是一个完全由学生团队建设管理的太原理工大学交流的平台,竭力打造成所有太原理工大学学生必上的网络家园。1 L' V$ e# r& P2 @
直接编辑表格数据,而不是要求用户导航到新的页面来编辑数据。对于Ajax,当用户单击Edit时,可以将静态表格刷新为内容可编辑的表格。用户单击Done之后,就可以发出一个Ajax请求来更新服务器,并刷新表格,使其包含静态、只读的数据。
  t! d' n7 R) o太原理工大学,太原理工大学论坛,太原理工大学考研论坛,太原理工大学BBS,太原理工大学网络家园   一切皆有可能!但愿它能够激发您开始开发自己的基于Ajax的站点。然而,在开始之前,让我们介绍一个现有的Web站点,它遵循传统的提交/等待/重新显示的范例,我们还将讨论Ajax如何提升用户体验。
" _- o6 m  r+ J3 B6 Y太原理工大学清泽论坛成立于2006年8月8日,是一个完全由学生团队建设管理的太原理工大学交流的平台,竭力打造成所有太原理工大学学生必上的网络家园。   Ajax的工作原理相当于在用户和服务器之间加了—个中间层,使用户操作与服务器响应异步化。这样把以前的一些服务器负担的工作转嫁到客户端,利于客户端闲置的处理能力来处理,减轻服务器和带宽的负担,从而达到节约ISP的空间及带宽租用成本的目的。3 t) p0 b6 g% |9 H% i+ N
熟悉Ajax的基本框架后,就可以着手去学习Ajax了。我给大家推家一下我的入门书人邮的《精通 Ajax---基础概念、核心技术与典型案例》。不知道书店还有没有,不过网上还能看到http://www.china-pub.com/38158。希望大家可以掌握这门技术。
注:另外详细介绍参考:http://www.java-cn.com/club/html/93/n-2793.html
推荐阅读
  • 在springmvc框架中,前台ajax调用方法,对图片批量下载,如何弹出提示保存位置选框?Controller方法 ... [详细]
  • Spring常用注解(绝对经典),全靠这份Java知识点PDF大全
    本文介绍了Spring常用注解和注入bean的注解,包括@Bean、@Autowired、@Inject等,同时提供了一个Java知识点PDF大全的资源链接。其中详细介绍了ColorFactoryBean的使用,以及@Autowired和@Inject的区别和用法。此外,还提到了@Required属性的配置和使用。 ... [详细]
  • XMLhttpREquest_Ajax技术总结之XmlHttpRequest
    Ajax1、 什么是ajax   ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • Java实战之电影在线观看系统的实现
    本文介绍了Java实战之电影在线观看系统的实现过程。首先对项目进行了简述,然后展示了系统的效果图。接着介绍了系统的核心代码,包括后台用户管理控制器、电影管理控制器和前台电影控制器。最后对项目的环境配置和使用的技术进行了说明,包括JSP、Spring、SpringMVC、MyBatis、html、css、JavaScript、JQuery、Ajax、layui和maven等。 ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • Python瓦片图下载、合并、绘图、标记的代码示例
    本文提供了Python瓦片图下载、合并、绘图、标记的代码示例,包括下载代码、多线程下载、图像处理等功能。通过参考geoserver,使用PIL、cv2、numpy、gdal、osr等库实现了瓦片图的下载、合并、绘图和标记功能。代码示例详细介绍了各个功能的实现方法,供读者参考使用。 ... [详细]
  • WebSocket与Socket.io的理解
    WebSocketprotocol是HTML5一种新的协议。它的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话,属于服务器推送 ... [详细]
  • SpringMVC接收请求参数的方式总结
    本文总结了在SpringMVC开发中处理控制器参数的各种方式,包括处理使用@RequestParam注解的参数、MultipartFile类型参数和Simple类型参数的RequestParamMethodArgumentResolver,处理@RequestBody注解的参数的RequestResponseBodyMethodProcessor,以及PathVariableMapMethodArgumentResol等子类。 ... [详细]
  • JavaWeb中读取文件资源的路径问题及解决方法
    在JavaWeb开发中,读取文件资源的路径是一个常见的问题。本文介绍了使用绝对路径和相对路径两种方法来解决这个问题,并给出了相应的代码示例。同时,还讨论了使用绝对路径的优缺点,以及如何正确使用相对路径来读取文件。通过本文的学习,读者可以掌握在JavaWeb中正确找到和读取文件资源的方法。 ... [详细]
  • Servlet多用户登录时HttpSession会话信息覆盖问题的解决方案
    本文讨论了在Servlet多用户登录时可能出现的HttpSession会话信息覆盖问题,并提供了解决方案。通过分析JSESSIONID的作用机制和编码方式,我们可以得出每个HttpSession对象都是通过客户端发送的唯一JSESSIONID来识别的,因此无需担心会话信息被覆盖的问题。需要注意的是,本文讨论的是多个客户端级别上的多用户登录,而非同一个浏览器级别上的多用户登录。 ... [详细]
  • Apache Shiro 身份验证绕过漏洞 (CVE202011989) 详细解析及防范措施
    本文详细解析了Apache Shiro 身份验证绕过漏洞 (CVE202011989) 的原理和影响,并提供了相应的防范措施。Apache Shiro 是一个强大且易用的Java安全框架,常用于执行身份验证、授权、密码和会话管理。在Apache Shiro 1.5.3之前的版本中,与Spring控制器一起使用时,存在特制请求可能导致身份验证绕过的漏洞。本文还介绍了该漏洞的具体细节,并给出了防范该漏洞的建议措施。 ... [详细]
author-avatar
乾岳_349
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有