服务器是否总是按照发送的顺序接收AJAX请求?
Does the server always receive AJAX requests in the same order they are sent?
我有一个通过AJAX向服务器发送信息的网页。我需要确保服务器以正确的顺序处理请求。服务器接收请求的顺序是否可能与发送请求的顺序不同?网页确保请求以正确的顺序发送,但请求之间的时间可能非常短。页面不接收来自服务器的数据,因此响应不需要按顺序排列。
由于每个AJAX请求都在自己的连接中运行,因此无法保证异步请求将以发送的顺序到达。
如果您想确保它们以发送的顺序到达,请使用同步请求。另一种可能性是将请求打包在一起。
这取决于您的服务器和服务器负载。通常情况下,如果请求不需要太多的处理器时间,它们应该按照正确的顺序处理。
为了绝对确定,你可以实现一个发送队列。第二个请求等待第一个请求完成,依此类推。这当然需要更多的实现工作。
我认为不能保证你的请求会按照你发出请求的顺序得到处理。如果顺序很重要,您可能应该将请求捆绑为一个请求,或者在发出下一个请求之前等待每个请求返回。
来自浏览器的每个AJAX请求都可以通过不同的网络路径到达服务器。因此,如果浏览器以1、2、3、4、5的顺序发出异步请求,它们可能在进行临时测试时以该顺序显示,但在某些时候,当网络上发生某些变化时,它们可能以类似1、2、5、3、4的顺序到达。如果服务器接收到的消息顺序很重要,则需要创建消息队列。
相关文章:
- ajax请求的顺序总是不同的
- Ajax更新表数据,但不重复顺序
- 在学习JavaScript,Ajax,jQuery和JSON时是否与顺序相关
- 控制 AJAX 请求的顺序
- 是否可以通过 AJAX *按顺序*上传文件
- 使用Ajax以特定的顺序提交特定的表单
- 延迟的jquery ajax请求的顺序
- 按顺序执行ajax请求的动态编号
- 按调用顺序返回由Ajax/HTTP生成的数据列表
- 多个 ajax 异步不按顺序排列,需要同步行为
- 如何输出反向顺序?AJAX 文件 > DIV.
- 执行顺序 ajax 请求
- 使用递归函数按顺序执行多个 ajax 请求,并在所有请求完成后执行回调函数
- Jquery - 按顺序排列的 ajax 循环
- 如何使用 Ajax 一次仅按顺序发布数组的 1 个值,并在继续之前等待响应
- 从顺序 jQuery ajax 调用返回承诺
- 按顺序发送多个 Ajax 查询在 chrome 和 Safari 中失败
- 如何按照与请求相同的顺序对 AJAX 响应进行排序
- 用于顺序ajax请求的jQuery插件
- 按顺序加载两个jqgrids(顺序ajax调用)