最近在做前端异常监控上传异常日志,发现通过ajax请求后台的时候,监控台返回该请求的状态是canceled。

启发

仅仅是由于之前为了在输入账号时让浏览器进行自动补全,而将原先的div更换为了form,而不巧的是之前的登录事件源使用的是button。

而至于为什么status = canceled,是由于在提交时,form action与绑定于button上的click事件会同时触发。form action将表单内容以serach的形式追加至当前url上,url变更后会导致页面重新加载, 而这正是导致post请求在执行后就被终止的原因。

原因多个接口同时异常,导致监听上传错误日志的ajax请求被终止,只有最后一个请求成功!


解决方案

最后发现是ajax请求默认是异步的。我把请求改成同步的就行了。设置如下参数:async: false。

相关文章:

  • 2021-10-02
  • 2021-12-23
  • 2021-10-15
  • 2021-11-20
  • 2022-03-06
猜你喜欢
  • 2021-10-04
  • 2022-12-23
  • 2022-12-23
  • 2021-10-03
  • 2022-02-04
  • 2021-05-26
  • 2021-10-26
相关资源
相似解决方案