使用Ajax时的十个常犯的错误

上个月我发现许多Web2.0网站大量运用了ajax,但是其中有些很奇怪,因为他们的速度比起前慢了,并且有时候不起作用(在移动设备上),我总结了十条用Ajax的错误(平台无关)

1、 不要通过把整个页面都放在UpdatePanel中更新整个页面。在你运行网页时需要节省时间,不要更新那些可以用javascript and (DOM)的部分。

2、 要始终记得有这么几种访问者,他们不能用JavaScript或者用的版本比较老的浏览器或者他们对JavaScript支持不好,比如说移动设备。如果这些都不支持,你的访问者能看到什么?

3、 在客户端浏览器缓存相同的请求或者在we服务器端执行缓存。最好的例子是自动完成个下拉菜单,他们的填充在任何时刻都是相同的,一个有错误写法的自动完成的写法可以减慢你的Web服务器(数据库服务器),因为那样会有比起以前用IsPostBack更多地请求。想一下不停的按F5刷新你的网页的情形。如果你有层叠的下拉菜单你就会结算更多地请求。

4、 在你运用CSS或JavaScript时,不要运行,并发的或者运行很长时间的Ajax请求,一般的浏览器只能有两个并发的http连接(我知道可以给变这个,但是默认的还是设为两个)。如果在读取图片的时候由很多Ajax请求的话,速度会变得很慢。

5、 什么时候都用异步调用的方法发送XMLHttpRequest.。如果你要用同步的方法也是没有请问题的,你的浏览器不会因为网络问题或是连接速度慢而冻结的

6、 试着让你的web应用使用一个很慢的网络连接,再尝试用快的TCP/IP连接

7、 你的web应用是作为桌面程序的替代品?你注意观察过一般浏览器在运行你的Web应用一小时,两小时或者几天时内存的使用。不是所有人都有你那样好的机器。

8、 检查在你返回XMLHttpRequest时你的http请求状态代码( code),那会有一些常见的网络错误像是不可获得的DNS,Http Server error 500 ,你曾经检查过状态代码( code),它可以告诉你浏览器在一个为连接的模式

9、 试着禁止XMLHttpRequest object!用IE7你能用native object代替ActiveX object,但是你也可以禁止native object。

10、检查你AJAX requests的安全性!你简单的打开了你的数据访问层吗?充分运用FormsAuthentication和PrincipalPermissions。是不是任何人都可以建立一个请求(不只是点击一个链接)?

标签Tags:, , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

陈格雷:错误让Web2.0难以盈利

  让我们把无数花哨的概念的外壳和包装一层层剥去,说到底,互联网的最后其实就是两种东西,一个是内容浏览,一个是人的交往。内容和人,这才是区分的标准。

什么是web2.0?这个似乎不再成为问题的问题,也许是解开web2.0盈利出路的根本。在我看来,只要继续将“用户自己生产内容”作为区分是否是web2.0的根据,那么,寒冬之后未必会有春天,甚至可能是冰川纪的出现。
(更多…)

标签Tags:, , ,

浅尝ajax

最近ajax热潮似乎风靡全球,
开发的时候也不免遇到这种要避免刷新的页面,
ajax自然成了首选,看了一下后ajax想深入还是挺复杂的,
但是仅仅用来做一些小的功能,上手是再简单不过了。

其实简单的说,一个最简单的完整的ajax应用仅仅包括:
1.创建XMLHTTP对象(主要为了兼容浏览器)
2.发送变量,请求页面
3.定义XMLHTTP发送请求后onreadystatechange事件
4.获取返回页面值
5.无刷新更改本页面的显示
(更多…)

标签Tags:, , ,

web 3.0 的思考

俺们老大总是说一句话,叫“ 2.0″, 让他很是郁闷的是很多叫不上口,摆不上桌面的网站也叫嚣自己是正宗的web2.0, 就像俺们街口的小贩前面放一个”正宗臭豆腐“ 牌子一样,只是俺写程序出身,从来看不清楚什么叫WEB2.0,或者说web2.0和所谓1.0 有什么不同, 因为按照他们归纳这个WEB2.0 包括博客,社区,等等我看来和CMS没有什么不一样, 后来俺和一个MM讨论社区的时候,发现一个人的思维是有一个定式的,而且你不太可能改变, MM认为BBS和社区不是同一个东西,BBS是需要登陆,注意这个mm她从来都是用TELNET的方式上清华bbs, 然后用IE上sohu社区看减肥,在她的思维观念中, 这是两个完全不同的世界,我怎么说,也无法说服她 ,最后只能放弃,而她男友在旁边幸灾乐祸,估计他早料到这结果,让俺这个傻乎乎的鸡蛋去碰石头。从这个文科MM或者说他们这种文科的思维方式, 是形式决定内容的方式。 (更多…)

标签Tags:, , ,