2 delie08 delie08 于 2017.09.13 11:41 提问

执行多个异步请求,但是请求到的数据顺序打乱,请问一下如何设置

执行多个异步请求,但是请求到的数据顺序打乱,请问一下如何设置

3个回答

SheIsSoBeautiful
SheIsSoBeautiful   2017.09.13 11:45

用回调函数来得到数据

delie08
delie08 可以说说具体实现的思路,主要是新手一枚
10 个月之前 回复
oyljerry
oyljerry   Ds   Rxr 2017.09.13 12:57

异步本来就是不保证返回的数据的顺序,你需要在收到数据后,自己再排序处理等。

delie08
delie08 现在就是这个问题,如何自己排序处理啊
10 个月之前 回复
kfrhappy
kfrhappy   2017.09.13 15:05

如果是ajax的话 他是多线程的,所以返回的数据不确定, ajax可以写成等一个完成后再执行下一个操作。

delie08
delie08 改成同步?
10 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
iOS 依次执行 异步网络请求的一种实现
1.首先先介绍一个概念dispatch_semaphore dispatch_semaphore信号量为基于计数器的一种多线程同步机制。用于解决在多个线程访问共有资源时候,会因为多线程的特性而引发数据出错的问题. 如果semaphore计数大于等于1,计数-1,返回,程序继续运行。如果计数为0,则等待。 dispatch_semaphore_signal(semaphore)为计数+1操作。disp
有异步请求时注意程序执行的顺序
正确 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if(resultCode == 2){
ajax异步请求,请求与响应顺序对不上
有一个第三方图片服务器提供了一个webservice接口,我们写了一个独立运行的程序,来通过webservice请求远程服务器上的图片地址.为了提升性能,我们将业务系统使用ajax异步请求,业务系统服务器调用独立运行的webservice访问程序。由于响应速度的问题,webservice访问程序给业务系统服务器的响应顺序与其请求顺序没有对应上,导致返回到页面上的图片地址混血混乱。 首先,我们怀疑
多个ajax请求时控制执行顺序或全部执行后的操作
一、当确保执行顺序时: 1、 请求加async: false,,这样所有的ajax就会同步执行,请求顺序就是代码顺序 2、$.when($.ajax(             {async: false,                 url : url1             }         ), $.ajax(             {async: false,   
让异步的多个ajax顺序执行的方法
就是说等第一个ajax传回来后再执行第二个ajax跟其他的js代码 $.ajax({ type: "POST", url: "http://xxx/xxx.aspx", data: "", success: function(msg){ } }); 试了几次,除了在 那里 执行接下来的代码外,要顺序执行的代码放在下面的话会在第一个ajax的值还未传回来时就执行
多个ajax异步请求返回的执行顺序处理,根据发起请求的顺序排序
同一个方法里的的两个ajax异步请求,由于两个请求是并行的,执行的快与慢,要看响应的数据量的大小及后台逻辑的复杂程度。而且有一个现象是:首先获得响应的不一定是先触发的请求。实现需要根据发起顺序的请求时,可以通过ajax的success下加一个ajax请求,或在回调函数complete套一个ajax实现顺序显示...
iOS 通过添加线程依赖和信号量结合实现一个复杂界面请求多个接口时按指定顺序执行
前言:本文通过作者的一种思想实现关于iOS中一个界面请求多条数据时,需要按指定顺序执行主要思路:为了实现多个请求接口按指定顺序前后执行,本文主要通过添加线程依赖关系和GCD的信号量相结合来实现基本需求贴上Demo地址,感觉可以的麻烦记得点个星星。直接上代码线程依赖关系通过使用系统对GCD的进一步封装的类NSBlockOperation来实现-(void)dispatchAllRequest{
多个ajax请求时控制执行顺序或者等待执行完成后的操作
当确保执行顺序时: 一、 请求加async: false,,这样所有的ajax就会同步执行,请求顺序就是代码顺序 代码部分: $.when($.ajax(     {async: false,      url : url1       }     ), $.ajax(      {async: false,
前端踩坑小结:多个异步请求在同一个函数里面执行时的同步问题之promise的用法。
今天用VUE编写项目时,涉及到两个异步请求在一个方法里面对同一个变量进行操作,之前自己都没意识到多个异步请求对同一变量进行操作的时候会导致数据错误,结果今天调试了半天,才想到了这个问题。也是怪自己还是一个新手,对于这种常识性的错误都不敏感。 于是自己查了一下相关资料,发现了promise的用法。刚开始的时候自己看了一下博客,看的也是一脸懵逼。因为promise的写法很多,很多也用到了新的ES6的
加载页面时同时触发两个ajax请求,数据显示的顺序不一致
今天在公司做项目时遇到一个问题,列表数据顺序一直在变化。为什么呢?因为 在我第一个请求没返回的时候,就可以执行第二个了。 解决关键:根据第一个异步访问的请求结果来判断,来执行第二个Ajax 例如: jQuery.ajax({ type: "post", url: "xx.aspx", dat