Ajax技术特点:怎样达到不刷新页面即可数据更新
中间媒介商Ajax是个很神奇的中介商,由于他的好客,热情,服务态度好,导致效率很高,现在很多网站都喜欢和他合作,我们看看他的神奇地方。
上次我们聊了Ajax在其间所扮演的角色,Ajax引擎的功能巨大,消除了网络交互中的处理--等待--处理--等待的确定啊,它是怎么实现的呢,话说这点我也是很好奇,因为我对web的实验,在jsp的改变确实是在刷新后才能看到了。
1.减轻了服务器的负担,是客户端闲置资源在进行的处理。
2.王者无刷新,Ajax利用XMLHttpRequest对象发送请求并得到服务器响应,在不需要重新载入整个页面的情况下,就可以通过DOM及时将更新的内容显示到页面上,这个对象很神奇,打算试试用一下,秉着先了解再用的原则,之后做项目用到我会把这个神奇的效果发到这里
3.可调用XML等外部数据,促进页面显示与数据分离,这个在安卓中体会很深,基本上在页面上不直接写什么数据,都是调用另一个文件夹的xml,有时候是style.xml,有时候是color.xml,但是凡事都有先来后到的顺序,不得不承认这种形式是网页先开始。
4.不需要下载插件或者程序,实现桌面应用程序效果(这个不太懂)
5.无平台限制。
不过本身Ajax也有缺点,大量的javascript语言,可视化设计困难,打破了页的概念,给搜索引擎带来困难,这些都需要自己去体验,光看估计很难体会到
注意问题
1.网络安全
web流量器执行Javascript功能时,允许任何人编写的代码运行,这样十分不安全,那么浏览器厂商就提供了一个sandbox沙箱来执行javaScript代码,何谓沙箱,相信大家或多或少都听过这个词,但是不一定知道这是干嘛的,举个小例子,你的电脑插入了别人的优盘,360提示你在沙箱里运行程序或者文件,有时候你发现正常的程序运行不出来,虽然我不知道我自己编写的程序经常被360标注为危险程序,被提到沙箱运行,这时候表示程序不完全,这是因为沙箱只能访问到很少的计算机资源的封闭空间,就好像有一个人来到我家,,那么我肯定不希望他看到我的闺房,于是呢我就把他的活动范围限制在客厅,他只能获取到客厅的资源,这就是沙箱功能。
另一个就是http传输数据加密,一些普通信息倒是无所谓,但是涉及到机密信息,例如用户账号密码那就要加密,避免恶意路由读取传输内容,所以叫你们不要随便连来路不明的wifi,聊天打嗝无所谓,支付什么的还是不要不要了
在一个就是客户端调用远程服务的安全问题
一些高手确实可以跳过javascript检查用户的权限,这个比较屌,其实我也想试试,在Ajax应用中,应该将所有的Ajax请求都发送到服务器,由控制器检查
如何对Ajax进行优化:
- 尽量使用局部变量,少全局
- 尽量少用eval,每次用将花费大量时间
- 将Dom节点附加到文档上
- 尽量减少“.”号操作符使用
虽然还不知道后三个是什么,但是以后用到会注意,没注意也会记住来翻这篇博客
Ajax使用到的技术:
XMLHttpRequest
- XML
- JavaScript
- CSS Cascading Style Sheet 层叠样式表
- DOM
接下来的几节会用到XMLHttpRequest,也可以揭秘它看看是怎么回事
下一篇: 用js指定步长实现单方向匀速运动