今天写代码时碰到一个这样的问题,一直不明白怎么解决,我在js页面写了一个循环ajax请求,差不多循环20次,我发现后台只接收了6次,从第7次开始后台就不接收了,一直进不了contrller层的断点,很奇怪。(我的一次请求后台差不多要处理半个小时,所以前台用的是异步ajax,不知道是不是这个原因,如果是的话,应该怎么解决呢)请各位大神帮帮忙js代码:后台代码:

解决方案 »

  1.   

    把async改成同步试试
      

  2.   

    把async改成false
      

  3.   


    用异步的话如果有全局变量可能会有数据错误问题,建议把回调函数的ajax抽出来写成一个函数 前后端联调看是哪个方法执行时间过长
      

  4.   

    在接口的路径上加一个?id=Math.random()  这样的参数试试
      

  5.   

    页面缓存的原因 要么禁用ajax缓存 要么每次传一个随机数
      

  6.   

    把每次ajax调用间隔100毫秒试试
      

  7.   

    什么操作要半个少时?这时间耗在哪,先主要问题是把这个时间尽量压缩,数据库优化sql优化这些,如果操作要这久就来统计一个报表,干嘛不跑调度?异步会很容易造成死锁等情况,最终导致整个线程崩溃没反应,所以也就是你说的后面的请求一直进入不了controller等情况。具体情况具体分析!
      

  8.   

    url后面 把当前时间毫秒值当成参数传过去试试
      

  9.   

    路径上加一个变化的参数。如 Math.random() 保证每次请求url不同。