Ajax技术种open参数中的true

ajax是一种很常用的技术了
做前端的是一定要知道的

open方法有三个参数,一开始使用ajax的时候我都没有注意到这个true
因为觉得ajax本来就是异步的JavaScript,同步有嘛意思捏

后来实际做项目的时候用到了循环发送ajax请求
就是在一个循环体种加入ajax请求的代码
结果发现,并没有连续收到服务器的回应
然后我就将ready status打印出来了,发现居然是1
只有最后一次循环是4
1表示什么?

附上readyState状态值意义:
0:请求没有发出(在调用 open() 之前)。
1:请求已经建立但还没有发出(调用 send() 之前)。
2:请求已经发出正在处理之中(这里通常可以从响应得到内容头部)。
3:请求已经处理,响应中通常有部分数据可用,但是服务器还没有完成响应。
4:响应已完成,可以访问服务器响应并使用它。

可见我的请求已经发送过去了,但是服务器也建立了连接了,但是还没有回应我,又一个请求发过来了
这就是ajax的异步 =。=
所以我把open种的TRUE改成了FALSE
这样 我需要的数据就从服务器一次一次 循环着返回了

但是

恩这样ajax的优势就木有了啊
所以我又想了个解决的办法:
将需要发送过去的数据拼接成一个字符串,服务器收到字符串以后将字符串再分开处理,处理以后再拼接,再返回给前端,前端再分开处理

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值