axios請求提交的form data格式 明明是JSON格式的參數卻轉成了字符串格式


問題:傳的參數成為了字符數格式

 

 解決:把參數的格式轉換

          const params = new URLSearchParams()
          params.append('USER_LOGIN', 'admin')
          params.append('PASS_WORD', '123456')
          params.append('LOGTYPE', '')

然后就OK了,如下:

 

 我們總不能在每個接口請求時候單獨去轉換格式吧,這樣子賊費勁,也不好維護,那么我們在請求封裝時候封裝一下cinfig data就可以了:

// 請求攔截器
service.interceptors.request.use(
  config => {
    // 請求前
    // console.log(config.data)
    const params = new URLSearchParams()
    for (const key in config.data) {
      if (config.data.hasOwnProperty(key)) {
        params.append(key, config.data[key])
      }
    }
    config.data = params
    return config
  },
  error => {
    // 做一些請求錯誤
  }
)

我就這樣封裝,目前個人解決方法就如此,每次請求時候都能自己轉換了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM