Vue axios post 傳參數,后台接收不到為 null


由於axios默認發送數據時,數據格式是Request Payload,而並非我們常用的Form Data格式,后端未必能正常獲取到,所以在發送之前,需要使用qs模塊對其進行處理。
cnmp install qs --save

在main.js 中添加

// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import VueRouter from 'vue-router'
import router from './router'

import qs from 'qs'
//定義全局變量
Vue.prototype.$qs = qs
var axios = require('axios')
axios.defaults.baseURL = 'http://localhost:8888/api'
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'
//將API方法綁定到全局
Vue.prototype.$axios = axios

// 導入 ElementUI
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'

//導入Vuex
import Vuex from 'vuex'

import App from './App'


// 安裝路由
Vue.use(VueRouter);

// 安裝 ElementUI
Vue.use(ElementUI);

//安裝 Vuex

Vue.use(Vuex);

new Vue({
  el: '#app',
  // 啟用路由
  router,
  // 啟用 ElementUI
  render: h => h(App)
});


 this.$axios.post(
              '/getTableUserData',
              this.$qs.stringify({
                  currentPage:this.currentPage,
                  pagesize:this.pagesize
              }),
              )


免責聲明!

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



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