社区
Ajax
帖子详情
ajax 是真的异步?还是伪异步?
elezone
2012-05-04 05:58:59
在web开发中遇到一个问题,设置ajax超时时间为0,即不超时,当用ajax异步请求服务器端数据的时候由于服务器处理时间较长,当服务器还没有返回结果的时候如果想通过超链接访问别的服务器页面是不给响应的,即你怎么点也无反应,虽然当前页面的一些控件可以点。那么ajax是不是只是当前页面的一个异步请求?在ajax没有得到结果的时候是不能跳转到别的页面么?
...全文
413
5
打赏
收藏
ajax 是真的异步?还是伪异步?
在web开发中遇到一个问题,设置ajax超时时间为0,即不超时,当用ajax异步请求服务器端数据的时候由于服务器处理时间较长,当服务器还没有返回结果的时候如果想通过超链接访问别的服务器页面是不给响应的,即你怎么点也无反应,虽然当前页面的一些控件可以点。那么ajax是不是只是当前页面的一个异步请求?在ajax没有得到结果的时候是不能跳转到别的页面么?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
maquan
2012-05-08
打赏
举报
回复
主流浏览器并发连接数
“浏览器默认对同一域下的资源,只保持一定的连接数,会阻塞过多的连接。”
以上供参考。不一定是这个原因,因为即使有连接数的限制,至少也是 2。也许页面中还有另外一个同域的请求一直占据着连接……
elezone
2012-05-07
打赏
举报
回复
[Quote=引用 2 楼 的回复:]
楼主能确定你的试验结果吗?
我在 IE 8.0 和 Chrome 17.0 下都做了测试,没有你说的“不能跳转到别的页面”的问题。无论是本页签跳转还是弹出新页签,都没问题。
AJAX 肯定是“真异步”,这个没问题,它的意思是:HTTP 请求发出后,不用等待返回结果,程序下滑,继续执行其它的内容。
就我所知,有两个因素可能导致“阻塞”的现象:
1. 一个页面里只能有一个线程……
[/Quote]
3楼说的有道理,我又重新用ie9及chrome 12测了一次,这次页面中放了两个超链接,一个是链接到baidu首页的,一个是链接到本服务器的一个页面,同样是在ajax发送请求等待数据返回的过程(ps:我在服务器端处理请求返回数据的程序中加了等待10秒钟的代码)中分别点击两个超链接,但结果会不同,点击链接到baidu的超链接是可以立即跳转的,但点击跳转到本服务器的页面的时候是不会立即跳转,要等服务器返回数据后才跳转。不知道浏览器内部的实现机制是怎样的。
snow-is-my-Love
2012-05-05
打赏
举报
回复
真异步
maquan
2012-05-04
打赏
举报
回复
楼主能确定你的试验结果吗?
我在 IE 8.0 和 Chrome 17.0 下都做了测试,没有你说的“不能跳转到别的页面”的问题。无论是本页签跳转还是弹出新页签,都没问题。
AJAX 肯定是“真异步”,这个没问题,它的意思是:HTTP 请求发出后,不用等待返回结果,程序下滑,继续执行其它的内容。
就我所知,有两个因素可能导致“阻塞”的现象:
1. 一个页面里只能有一个线程用来跑 js 引擎,尽管事件驱动的 js 代码看上去很像是“多线程”的。
2. 貌似浏览器会对所有的 HTTP 请求进行排队处理,而能够并发处理这个队列的线程数是有限制的。老版本的 IE 浏览器好像有这个问题(曾经有一个所谓的“浏览器加速”的方法就是调大这个并发数),但是其它版本如何我就不是很清楚了。
————————————————————————————————
基于CSDN论坛提供的插件扩展功能,自己做了个签名档工具,
分享
给大家,欢迎
技术交流
:)
elezone
2012-05-04
打赏
举报
回复
实际我用抓包工具抓包得出的结果是在ajax没有得到服务器响应的时候我请求别的页面的get报文是不会发出去的。现在才明白ajax设置超时时间的作用了。
ajax
是
异步
还是同步?
Ajax
是
异步
的,意味着它可以在后台发送请求并处理响应,而不会阻塞页面的其他操作。具体来说,当使用
Ajax
发送请求时,页面会继续执行其他代码,而不需要等待服务器的响应。一旦服务器返回响应,就会触发回调函数...
什么是
ajax
什么是同步 什么是
异步
Ajax
: asynchronousjavascriptandxml (
异步
js和xml) 其是可以与服务器进行(
异步
/同步)交互的技术之一。
ajax
的语言载体是javascript。 最大特点:
异步
请求,不刷新整个页面,只刷新局部也叫局部刷新。 什么是...
ajax
是什么?
ajax
的交互模型? 同步和
异步
的区别? 如何解决跨域问题?
ajax
是什么?
ajax
的交互模型? 同步和
异步
的区别? 如何解决跨域问题?
ajax
是什么?
ajax
的交互模型? 同步和
异步
的区别? 如何解决跨域问题?
Ajax
是多种技术组合起来的一种浏览器和服务器交互技术,...
AJAX
是什么?
AJAX
的交互模型(流程)?同步和
异步
的区别?
AJAX
跨域的解决办法?
ajax
是
异步
的 JavaScript 和 XML。通过在后台与服务器进行少量数据交换,
AJAX
可以使网页实现
异步
更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。 交互流程: 1--启动 获取...
Ajax
是什么?
Ajax
的交互模型?同步和
异步
的区别?如何解决跨域问题?以及 HTTP状态码
1. 通过
异步
模式,提升了用户体验 2. 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用 3.
Ajax
在客户端运行,承担了一部分本来由服务器承担的工作,减少了大用户量下的服务器负载。 ...
Ajax
52,792
社区成员
25,335
社区内容
发帖
与我相关
我的任务
Ajax
Web 开发 Ajax
复制链接
扫一扫
分享
社区描述
Web 开发 Ajax
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章