axios 參數為payload的解決方法


1. 添加頭部headers

headers: {
    'Content-Type': 'application/x-www-form-urlencoded', },
axios.post(url, {a: 1, b:2}, {
  headers: {
    'Content-Type': 'application/x-www-form-urlencoded',
  },
}).then(response => response.data)
  .then(err => {
    console.log(err);
  });

 2. 在Browser環境下

 2.1 利用qs.stringify()處理參數

var qs = require('qs');
axios.post('/foo', qs.stringify({ 'bar': 123 });
<script src="/your-path/qs.min.js"></script>
axios({
   url: url,
   method: 'post',
   data: Qs.stringify(params)   
})
.then(function (resp) {
//
})
.catch(function (err) {
//       
})
 

2.2 利用 URLSearchParams API 處理post參數

const params = new URLSearchParams();
params.append('param1', 'value1');
params.append('param2', 'value2');
axios.post('/foo', params);

查看 URLSearchParams 兼容性,還可以使用pollify

 3. 在node環境下

可以使用querystring 模塊

const querystring = require('querystring');
axios.post('http://something.com/', querystring.stringify({ foo: 'bar' }));

或者使用qs.stringify(),qs同樣可以在node中使用

4. 參考下面鏈接
https://github.com/mzabriskie/axios/blob/master/README.md#using-applicationx-www-form-urlencoded-format


免責聲明!

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



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