vue.js - vue-resource 在 IE9 下 response 中 status 为 undefined

查看:519
本文介绍了vue.js - vue-resource 在 IE9 下 response 中 status 为 undefined的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

vue-resource 在 IE9 下 response 中 status 为 undefined, 在拦截器中设置的 headers 请求的 数据都无法带到后端, 在其他IE10+ 或 其他浏览器一切正常。

$ 拦截器代码

request (requestBody) {
      let reqAuthPacket = AuthService.getAuthTokenPacket()

      // noinspection JSUnresolvedFunction
      store.dispatch(types.AJAX_REQUEST)

      // 添加请求令牌
      requestBody.headers['X-AUTH-TIME'] = reqAuthPacket.time
      requestBody.headers['X-AUTH-APPKEY'] = reqAuthPacket.appkey
      requestBody.headers['X-AUTH-TOKEN'] = reqAuthPacket.token
      // 添加用户令牌
      if (Auth.isLoggedIn()) {
        // 授权服务 实现方式
        requestBody.headers['X-USER-TOKEN'] = Auth.getUserToken()
      }

      return requestBody
    }

debugger 中的 request 对象

实际发出的请求 header 中不存在自定义字段部分

response 对象中 status 为 undefined ok 为 false

解决方案

https://github.com/vuejs/vue-resource/issues/299

似乎是一個 bug ,但還未被解決,裡面有個臨時的解決方案你可以試試看。

这篇关于vue.js - vue-resource 在 IE9 下 response 中 status 为 undefined的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆