wczdsg 2022-03-02 17:10 采纳率: 42.9%
浏览 25
已结题

ajax请求,xhr.readyState直接从1跳到了4

问题遇到的现象和发生背景

在上传文件的时候由于登录的sessionId过期,上传后端返回错误,但是前端接收不到响应体,打印xhr.readyState发现直接从1跳到4,

img

img

问题相关代码,请勿粘贴截图
handleAjaxUpload() {
  let form = new FormData()
  form.append('package', this.ajaxFile[0])
  const xhr = new XMLHttpRequest()
  xhr.onreadystatechange = function () {
    console.log('xhr.readyState',xhr.readyState, xhr);
    if(xhr.readyState == 4){
      if(xhr.status == 200){
        // console.log('xhr.responseText',xhr.responseText);
      }else{
        // console.log('error',xhr);
      }
    }
  }
  xhr.open('post', '/system/upgrade/package/', true)
  xhr.setRequestHeader('content-type', 'application/x-www-form-urlencoded')
  xhr.send(form)
}

运行结果及报错内容

img

我的解答思路和尝试过的方法

尝试用抓包工具可以看到响应体和错误码401,但是浏览器始终获取不到响应体

我想要达到的结果
  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 3月10日
    • 创建了问题 3月2日

    悬赏问题

    • ¥15 Vue3 大型图片数据拖动排序
    • ¥15 划分vlan后不通了
    • ¥15 GDI处理通道视频时总是带有白色锯齿
    • ¥20 用雷电模拟器安装百达屋apk一直闪退
    • ¥15 算能科技20240506咨询(拒绝大模型回答)
    • ¥15 自适应 AR 模型 参数估计Matlab程序
    • ¥100 角动量包络面如何用MATLAB绘制
    • ¥15 merge函数占用内存过大
    • ¥15 使用EMD去噪处理RML2016数据集时候的原理
    • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大