使用axios post 提交數據,後臺獲取不到提交的數據解決方案

1、問題發現vue

     先後端分離使用vue開發,結合axios進行先後端交互數據,一開始使用 get 請求,獲取數據,沒有發現任何問題,當使用 post請求 傳參時,發現,數據明明已經提交,在打開F12 開發者工具,點擊 network 裏面的確有數據已經傳過去,只是後臺那裏 打印日誌確實沒有獲取到傳過去的參數。ios

2、解決方案npm

     1. 緣由: 傳參方式是request payload,參數格式是json,而並不是用的是form傳參,因此在後臺用接收form數據的方式接收參數就接收不到了。json

POST表單請求提交時,使用的Content-Type是application/x-www-form-urlencoded,而使用原生AJAX的POST請求若是不指axios

定請求頭RequestHeader,默認使用的Content-Type是text/plain;charset=UTF-8,而此處的Content-Type是:後端

     2. 解決方法:app

    安裝 qs   : npm install qs --save    在頁面中引用 qs :   var qs = require('qs'); 同時 須要將 請求頭headers改成: 'Content-Type': 'application/x-www-form-urlencoded', 前後端分離

 

注:此方案只是本人項目中遇到的問題,並以此方法解決的了項目中的問題,經後來查詢,還有其餘解決方法,就不一一介紹了。工具

相關文章
相關標籤/搜索