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


一、問題發現

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

二、解決方案

     1. 原因: 傳參方式是request payload,參數格式是json,而並非用的是form傳參,所以在后台用接收form數據的方式接收參數就接收不到了。

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

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

     2. 解決方法:

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

 

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


免責聲明!

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



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