什么是Ajax
- AJAX是“Asynchronous JavaScript and XML”的缩写。他是指一种创建交互式网页应用的网页开发技术。
ajax的原理
- Ajax技术核心是XMLHttpRequest对象(简称XHR);
- ajax的使用能够以异步的方式从服务器获取信息,意味着用户单击后,可以不必刷新页面也能取得新数据。
- ajax就是原本把需要在新页面中显示的内容,通过ajax异步载入到当前页面中来,再通过js输出,达到不刷新页面,获取新内容的目的。
Ajax的优点和缺点
- 优点
改善的用户体验- AJAX提供的更丰富的用户体验是其主要优点。AJAX允许网页持续更新,但只需要和服务器交互很少的数据。这样,就能在不必整个更新网页的情况下更新网页的一部分。经典的网页技术必须整个更新网页(即使你只想更新某一部分),是笨重的。AJAX增强了浏览器性能,使更快的浏览成为可能因此提供了有求必应的用户体验。
增强用户生产力- AJAX 库提供了面向对象的辅助函数,能给用户减少麻烦,增强生产力。另外,一个良好配置的ASP.NET应用有它自己的数据访问层和业务层。最后,“鲁棒”的ASP.NET应用包含UI层,在这一层执行服务器端操作。如果你已经包含了这些特性,AJAX只需要一个额外的AJAX服务层和一些客户端特性的改进。这样,开发代价就减小了,用户生产效率也就增加了。流行的站点如亚马逊,谷歌,雅虎等等都在开发中使用了AJAX。
减少带宽的使用并增加速度- AJAX使用客户端脚本来和web服务器通讯,用JavaScript来交互数据。使用AJAX能减少网路负载和带宽使用并且只获得你所需的数据。这样能给你更快的接口和更低的响应时间。响应更快因此性能和速度增加了
增强兼容性- AJAX和ASP.NET,J2EE,PHP或者其他任何语言兼容。它几乎支持所有流行的浏览器比如IE5及以上版本,Firefox1.0及以上版本,Safari1.2及以上版本,Opera7.6及以上版本,还有RockMelt。
支持异步处理- 使用XmlHttpRequest来进行异步数据获取,这是AJAX应用的中坚力量。所以,请求能被有效的处理,动态内容加载被提升到一个更高的层次,性能也得到了增强
减少服务器请求和网络负载-Atlas,微软AJAX库的一种较老的形式,是一个整合了客户端JavaScript库并且易用的框架,能和ASP.NET一起开发AJAX应用。它提供了跨浏览器支持和面向对象的API,这用来能开发具有最小化服务器请求/网路负载的应用,并能实现异步处理
更容易导航-AJAX应用能被用来简化用户在网页间的过渡,而不需要使用传统的前进后退键
- 缺点
浏览器不兼容-AJAX高度依赖JavaScript,而不同的浏览器对JavaScript支持性不同。这成了一个问题,尤其是当AJAX必须跨许多浏览器工作的时候。那些不支持JavaScript或者不支持JavaScript某些选项的浏览器将不能够正常使用ajax。由于ajax对JavaScript的依赖性,它不适用移动应用。你的web浏览器的后退键不能如期运行。
不安全性-网页可能很难调试,增加网页的代码量,你的网页更可能遇上严峻的安全威胁。
增加Web服务器的负载-如果你增加一个自动更新的功能,它每隔几秒向服务发起请求,那么就会增加服务器的负载。
- 使用Ajax的最大优点,就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。对应用Ajax最主要的缺点就是,它可能破坏浏览器后退按钮的正常行为因为Ajax中采用了xml技术,所以在Ajax中也可能问到XML的问题。(可扩展的标记语言(Extensible Markup Language)具有一种开放的、可扩展的、可自描述的语言结构,它已经成为网上数据和文档传输的标准,用于其他应用程序交换数据 。)
Ajax和javascript的区别?
- javascript是一种在浏览器端执行的脚本语言,Ajax是一种创建交互式网页应用的开发技术 ,它是利用了一系列相关的技术其中就包括javascript。Javascript是由网景公司开发的一种脚本语言,它和sun公司的java语言是没有任何关系的,它们相似的名称只是一种行销策略。在一般的web开发中,javascript是在浏览器端执行的,我们可以用javascript控制浏览器的行为和内容。在 Ajax应用中信息是如何在浏览器和服务器之间传递的 通过XML数据或者字符串。
