社区
Ajax
帖子详情
ajax 是真的异步?还是伪异步?
elezone
2012-05-04 05:58:59
在web开发中遇到一个问题,设置ajax超时时间为0,即不超时,当用ajax异步请求服务器端数据的时候由于服务器处理时间较长,当服务器还没有返回结果的时候如果想通过超链接访问别的服务器页面是不给响应的,即你怎么点也无反应,虽然当前页面的一些控件可以点。那么ajax是不是只是当前页面的一个异步请求?在ajax没有得到结果的时候是不能跳转到别的页面么?
...全文
419
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
请求。它允许通过在后台与服务器进行数据交换,更新部分网页内容,而无需刷新整个页面。
什么是
ajax
什么是同步 什么是
异步
什么是
ajax
Ajax
: asynchronousjavascriptandxml (
异步
js和xml) 其是可以与服务器进行(
异步
/同步)交互的技术之一。
ajax
的语言载体是javascript。 最大特点:
异步
请求,不刷新整个页面,只刷新局部也叫局部刷新。 什么是同步,什么是
异步
同步现象:客户端发送请求到服务器端,当服务器返回响应之前,客户端都处于等待卡死状态
异步
现象:客户端发送请求到服务器端,无论服务器是否返回响应,客户端都可以随意做其他事情,不会被卡死 ...
ajax
是什么?
ajax
的交互模型? 同步和
异步
的区别? 如何解决跨域问题?
ajax
是什么?
ajax
的交互模型? 同步和
异步
的区别? 如何解决跨域问题?
ajax
是什么?
ajax
的交互模型? 同步和
异步
的区别? 如何解决跨域问题?
Ajax
是多种技术组合起来的一种浏览器和服务器交互技术,基本思想是允许一个互联网浏览器向一个远程页面/服务做
异步
的http调用,并且用收到的数据来更新一个当前web页面而不必刷新整个页面。该技术能够改进客户
ajax
同步和
异步
区别?
ajax
同步和
异步
区别? 我们在使用
ajax
一般都会使用
异步
处理。
异步
处理呢就是我们通过事件触发到
ajax
,请求服务器,在这个期间无论服务器有没有响应,客户端的其他代码一样可以运行。 同步处理:我们通过实践触发
ajax
,请求服务器,在这个期间等待服务器处理请求, 在这个期间客户端不能做任何处理。当
ajax
执行完毕才会继续执行其他代码。 同步:提交请求->等待服务...
AJAX
是什么?
AJAX
的交互模型(流程)?同步和
异步
的区别?
AJAX
跨域的解决办法?
ajax
是
异步
的 JavaScript 和 XML。通过在后台与服务器进行少量数据交换,
AJAX
可以使网页实现
异步
更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。 交互流程: 1--启动 获取XMlHttpRequest对象 2--open 打开url通道,并设置
异步
传输 3--send 发送数据到服务器 4--服务器
Ajax
52,787
社区成员
25,335
社区内容
发帖
与我相关
我的任务
Ajax
Web 开发 Ajax
复制链接
扫一扫
分享
社区描述
Web 开发 Ajax
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章