浅谈Ajax

什么是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数据或者字符串。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,803评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,906评论 25 709
  • ajax大家应该都会很熟悉,我们在工作中或多或少的都会接触到ajax,今天我来谈一谈我对ajax的理解。 什么是a...
    JsonWithPadding阅读 2,806评论 0 5
  • D41 阿尔法号阿基米德舱110-黄丹 自我概念并不是实际上他人如何看待我们,而是我们认为他人会如何看待我们。听到...
    Michelle沐晨阅读 1,279评论 0 0
  • Outside the academy, it is a crime that can be prosecuted...
    毛旭天阅读 2,498评论 2 1

友情链接更多精彩内容