欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【使用Ajax时的十个常犯的错误】,下面是详细的分享!
使用Ajax时的十个常犯的错误
看了Dflying Chen 介绍的一篇Ajax的文章就像练练英语自己翻译一下,由于自己的水平有限,请大家批评指正。
本文的作者是知名.NET Ajax框架Ajax.NET Professional(AjaxPro)的作者Michael Schwarz
上个月我发现许多Web2.0网站大量运用了ajax,但是其中有些很奇怪,因为他们的速度比起前慢了,并且有时候不起作用(在移动设备上),我总结了十条用Ajax的错误(平台无关)
1、不要通过把整个页面都放在UpdatePanel中更新整个页面。在你运行网页时需要节省时间,不要更新那些可以用javascript and DHTML (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请求状态代码(status code),那会有一些常见的网络错误像是不可获得的DNS,Http Server error 500 ,你曾经检查过状态代码(status code),它可以告诉你浏览器在一个为连接的模式
9、试着禁止XMLHttpRequest object!用IE7你能用native object代替ActiveX object,但是你也可以禁止native object。
10、检查你AJAX requests的安全性!你简单的打开了你的数据访问层吗?充分运用FormsAuthentication和PrincipalPermissions。是不是任何人都可以建立一个请求(不只是点击一个链接)?
以上所分享的是关于使用Ajax时的十个常犯的错误,下面是编辑为你推荐的有价值的用户互动:
相关问题:ajax提交时弹出系统出现错误的提示。
答:这应该就是你alert出来的东西吧,你看看后台返回的,跟你alert出来的东西是不是一样的 >>详细
相关问题:ajax异步输出时,出现错误:
答:可以有两种方法 一种是将标签的href设置为javascript:void(0); 另一种是在标签的单击响应的匿名函数添加一个参数(e);再在函数体中ajax前面添加event.preventDefault();来阻止标签的默认行为; 如下 $("a[class=aType]").click(function (e) ... >>详细
相关问题:用C#检测网站状态,方法是发送Http code 请求,十...
答:建议使用异步方法去请求,或者使用并行计算Parallel去请求。因为HttpWebRequest是比较耗时的,尤其你一次性请求10个网站,如果中间有一个失败了,那需要的时间会非常长。Thread.Sleep会阻塞当前线程。 >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
