vue 前端报:TypeError: Failed to execute 'setRequestHeader' on 'XMLHttpRequest': Value is not a valid ByteString.


遇到了一个问题。前端请求头传中文过去会报错。

原因:

  • 请求的头信息中不能出现中文或UTF-8码的字符

解决方法:


将该字段进行编码或者加密,使用Base64进行编码 encodeURI() 这个函数

let headerIn = {
        headers:{}
      }
      const logName = store.getters.userCache.logName
      const userinfo = `logName=${logName}&userid=${store.getters.userCache.userId}`
      if(sessionStorage.getItem("userTk"))headerIn.headers.Authorization = sessionStorage.getItem("userTk")
      if(logName)headerIn.headers.userinfo = userinfo
      if(encryRequest)headerIn.headers.encryRequest = 'true'
      if(encryResponse)headerIn.headers.encryResponse = 'true'
      config = Object.assign(headerIn,config)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM